TWiki Site Tools
Utilities for searching, navigation, and monitoring site activity TWikiSiteTools include utilities for navigating, searching and keeping up with site activity. Preferences can be configured by web or site-wide. You are currently in the TWiki web. In particular, TWiki provides two highly configurable, automated site monitoring tools, WebNotify, to email alerts when topics are edited, and WebStats, to generate detailed activity reports.WebNotify Recent Changes Alert
Each TWiki web has an automatic email alert service that sends a list of recent changes on a preset schedule, like once a day. Users can subscribe and unsubscribe using WebNotify in each web. The Perl scriptmailnotify is called by a background process at regular intervals. The script sends an automated email to subscribed users if topics were changed in a web since the script was last run.
- You can create a WebNotify link using TWikiVariables with
%NOTIFYTOPIC%
<space><space><space>*) format containing the WikiName of a user; a WikiName with e-mail address; or a TWikiGroup. Examples:
-
Main.FredBloggs -
Main.FredBloggs - secondary@home.com -
Main.EngineeringGroup
%MAINWEB% instead of Main, but this is not necessary even if you have renamed the main web by configuring $mainWebname in TWiki.cfg.
Configuring Outgoing Mail
DENX will use theNet::SMTP module if it is installed on your system. Set this with the SMTPMAILHOST variable in TWikiPreferences.
The notify e-mail uses the default changes.tmpl template, or a skin if activated in the TWikiPreferences.
mailnotify also relies on two hidden files in each TWiki/data/[web] directory: .changes and .mailnotify. Make sure both are writable by your web server process. .changes contains a list of changes; go ahead and make this empty. .mailnotify contains a timestamp of the last time notification was done.
You can use an external mail program, like sendmail, if the Net::SMTP module is not installed. Set the program path in $mailProgram in TWiki.cfg.
-
Net::SMTP can be easily disabled (ex: if there is an installation error) by setting SMTPMAILHOSTin TWikiPreferences to an empty value.
-
You can set a separate SMTPSENDERHOSTvariable to define the mail sender host (some SMTP installations require this).
Setting the Automatic Email Schedule
For Unix platforms: Edit thecron table so that mailnotify is called in an interval of your choice. Please consult man crontab of how to modify the table that schedules program execution at certain intervals. Example:
% crontab -e 0 2 * * * (cd /path/to/twiki/bin; ./mailnotify -q)The above line will run mailnotify nightly at 02:00. The
-q switch suppresses all normal output.
For ISP installations: Many ISPs don't allow hosted accounts direct cron access, as it's often used for things that can heavily load the server. Workaround scripts are available.
On Windows NT/2000: You can use a scheduled task if you have administrative privileges.
Note: AT on an NT machine is pretty limited.
Microsoft lists several third-party
replacements. TWiki:Codev/CronTabWin is a free scheduler for Windows.
WebStatistics Site Usage Log
You can generate a listing manually, or on an automated schedule, of visits to individual pages, on a per web basis. Compiled as a running total on a monthly basis. Includes totals for Topic Views, Topic Saves, Attachment Uploads, Most Popular Topics with number of views, and Top Contributors showing total of saves and attachment uploads. Previous months are saved.- You can create a WebStatistics link using TWikiVariables with
%STATISTICSTOPIC%
Configuring for Automatic Operation
- You can automatically generate usage statistics for all webs. To enable this:
- Make sure variable
$doLogTopicView, $doLogTopicSave and $doLogTopicUploadinTWiki.cfgare set. This will generate log file entries (see below). - The WebStatistics topic must be present in all webs where you want to have statistics. You can use the topic in the Main web as a template.
- Call the
twiki/bin/statisticsscript from a cron job, once a day is recommended. This will update the WebStatistics topics in all webs. - Attention: The script must run as the same user as the CGI scripts are running, which is user
nobodyon many systems. Example crontab entry:
0 0 * * * (cd /path/to/TWiki/bin; ./statistics >/dev/null 2>&1) - There is a workaround in case you can't run the script as user
nobody: Run the utilitytwiki/bin/geturlin your cron job and specify the URL of thetwiki/bin/statisticsscript as a parameter. Example:
0 0 * * * (cd /path/to/TWiki/bin; ./geturl mydomain.com /urlpath/to/TWiki/bin/statistics >/dev/null 2>&1)
- Make sure variable
Generating Statistics Manually by URL
- The
twiki/bin/statisticsscript can also be executed as a CGI script, just enter the URL in your browser. Examples:- Update current month for all webs:
http://mydomain.com/twiki/bin/statistics - Update current month for Main web only:
http://mydomain.com/twiki/bin/statistics/Main - Update January 2000 for Main web:
http://mydomain.com/twiki/bin/statistics/Main?logdate=200001
- Update current month for all webs:
Log File Details
TWiki generates monthly log files which are used by the statistics- The log directory is defined by the
$logDirvariable in TWiki.cfg - The file name is
log<year><month>.txt - Example path name:
twiki/data/log201305.txt - Each access gets logged as:
| <time> | <wikiusername> | <action> | <web>.<topic> | <extra info> | <IP address> | - Example log entry:
| 19 May 2013 - 01:15 | Main.TWikiGuest | view | TWiki.WebRss | | 66.124.232.02 | - Actions are logged if enabled in TWiki.cfg by the
$doLogTopic<action>flags - Logged actions:
Script Action name 
Extra info attach attachwhen viewing attach screen of previous uploaded attachment: filenamechanges changesedit editwhen editing non-existing topic: (not exist)rename movewhen moving attachment: Attachment filename moved to Newweb.NewTopicrdiff rdiff1.4 1.3register registerE-mail address rename renamewhen moving topic: moved to Newweb.NewTopicsave savewhen replacing existing revision: repRev 1.3
when user checks the minor changes box:dontNotifysearch searchsearch string upload uploadfilename view viewwhen viewing non-existing topic: (not exist)
when viewing previous topic revision:r1.3
WebSearch
WebSearch is an extremely fast and flexible search facility, part of the core TWiki feature set. Options include:- topic title or full-text search
- regular expressions
- search within web or site-wide
- index-style A-Z alphabetical listing sorted topic title
- many more
WebChanges
To check for the most recently edited topics while on-site, use the WebChanges link, usually located on the upper toolbar. It lists the most recently modified topics, newest first, along with the first couple of lines of the page content. This is simply a presetSEARCH. The number of topics listed by the limit parameter.:
%SEARCH{".*" web="TWiki" regex="on" nosearch="on" order="modified"
reverse="on" limit="50"}%
WebIndex
WebIndex lists all web topics in alphabetical order, with the first couple of lines of text. This is simply a presetSEARCH:
%SEARCH{"\.*" scope="topic" regex="on" nosearch="on"}%
-- TWiki:Main.MikeMannix - 01 Dec 2001 -- TWiki:Main.PeterThoeny - 28 Aug 2004
