This is an old revision of the document!
Table of Contents
Log Statistics Plugin
Compatible with DokuWiki
- 2024-02-06 "Kaos" unknown
- 2023-04-04 "Jack Jackrum" unknown
- 2022-07-31 "Igor" yes
- 2020-07-29 "Hogfather" unknown
Similar to directions, statistics
This plugin was initially written by Jean-François Lalande based on some code by Matthias Grimm.
The logstats plugin provides a log file (NCSA combined i.e. like apache) of all accesses to DokuWiki pages and media files. This way this file can be used to generate various statistics about the dokuwiki's usage.
The logfile can be analyzed using popular web analytics software or within DokuWiki through the statdisplay plugin.
Installation
Search and install the plugin using the Extension Manager. Refer to Plugins on how to install plugins manually.
Changes
- Merge pull request #24 from dokuwiki-translate/lang_update_135_160062… (2020-09-21 10:45)
- translation update (2020-09-20 19:15)
- Merge pull request #23 from dokuwiki-translate/lang_update_45_1590184941 (2020-09-02 21:24)
- translation update (2020-05-23 00:05)
- Merge pull request #22 from dokuwiki-translate/lang_update_1184_15513… (2019-02-28 16:25)
- translation update (2019-02-28 14:55)
- Merge pull request #20 from dokuwiki-translate/lang_update_466 (2017-07-18 08:51)
- translation update (2017-07-17 22:10)
Configuration and Settings
The configuration of this plugin can be managed directly in DokuWiki (see Configuration link in admin interface).
For others parameters edit the file lib/plugins/logstats/conf/dafault.php
Log File Location
You can change the filename of the log file using the $conf['plugin']['logstats']['accesslog']
variable. When a relative file name is given (which is by default), it is relative to the data/meta/
directory.
$conf['plugin']['logstats']['accesslog'] = "access.log";
Banned IPs
You can ban some IP from being logged (for example your own IP). To do this, use the variable $conf['plugin']['logstats']['banned_ip']
which is a string containing all the banned IP addresses, separated by a comma.
$conf['plugin']['logstats']['banned_ip'] = "127.0.0.1,192.168.0.1,192.168.0.2";
Banned Users
You can ban some users (logged into DokuWiki) from being logged. To do this, use the variable $conf['plugin']['logstats']['banned_users']
which is a string containing all the banned users, separated by a comma.
$conf['plugin']['logstats']['banned_users'] = "bob,alice,gugu";
Banned User Agents (for bots)
You can ban some user agents. It useful for bots agents like google bot. To do this, use the variable $conf['plugin']['logstats']['banned_agents']
which is a string containing all the banned agent strings, separated by a comma.
$conf['plugin']['logstats']['banned_agents'] = "Googlebot,HooWWWer";
Known Limitations
Unlike your webserver, this plugin will not log any accesses to DokuWiki's own files (CSS, images, scripts, etc). Only content, that means wiki pages and media files are logged.
Logging might have some slight impact on the performance as each request will create a disk write.
Problem when log file increases above 64 MB:
If the size to access.log file is bigger than 64 MB, the following message was printed in the server log and dokuwiki was out of service:
FastCGI: "...doku.php" aborted: incomplete headers (0 bytes) received from server after 4 sec
My dokuwiki is hosted by strato (“PowerWeb Basic” Packet). I have no chance to change anything in the php configuration. I've spent a lot of time trying to figure out what the problem was. It would be nice to have a better error indication, or even better, to add a file limitation field to the plugin configuration and to archive the file once the size limit is reached.
Suggestions
Is it possible to perform the tool with annual logs file ? eg.
$conf['plugin']['logstats']['accesslog'] = "access.log";
could create 2014.access.log
if the current year is 2014, 2015.access.log
if the current year is 2015