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.
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 script
mailnotify
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.
TWiki handles WebNotify entries that include the
WikiName of a user or a
TWikiGroup and an optional e-mail address. Example entries in WebNotify:
* User.FredBloggs
* User.FredBloggs - secondary@home.com
* User.EngineeringGroup
The first entry is the default form, the notification gets sent to the e-mail address specified in the user's home page. The second entry lists an alternative e-mail address. The third entry specifies a group, the notification gets sent to each member of the group.
You can also use
%MAINWEB%
instead of
Main
, but this is not necessary even if you have renamed the main web by configuring
$mainWebname
in
TWiki.cfg
.
kyma•tweaky will use the
Net::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
SMTPMAILHOST
in TWikiPreferences to an empty value.
- You can set a separate
SMTPSENDERHOST
variable to define the mail sender host (some SMTP installations require this).
For Unix platforms: Edit the
cron
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
15,45 * * * * (cd ~twiki/public_html/bin; ./mailnotify -q)
The above line will call mailnotify at 15 minutes and 45 minutes past every hour. 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
(as of 2001-11-20, none of them free).
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 automatically generate usage statistics for all webs. To enable this:
- Make sure variable
$doLogTopicView, $doLogTopicSave and $doLogTopicUpload
in TWiki.cfg
are set. This will generate log entries in file twiki/data/log<date>.txt
.
- 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/statistics
script 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
nobody
on most 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 utility twiki/bin/geturl
in your cron job and specify the URL of the twiki/bin/statistics
script as a parameter. Example:
0 0 * * * (cd /path/to/TWiki/bin; ./geturl mydomain.com /urlpath/to/TWiki/bin/statistics >/dev/null 2>&1)
Generating Statistics Manually by URL
- The
twiki/bin/statistics
script 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
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
See also:
TWikiVariables for including hard-coded searches in text.
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 preset
SEARCH
. The number of topics listed by the
limit
parameter.:
%SEARCH{".*" web="TWiki" regex="on" nosearch="on" order="modified"
reverse="on" limit="50"}%
WebIndex lists all web topics in alphabetical order, with the first couple of lines of text. This is simply a preset
SEARCH
:
%SEARCH{"\.*" scope="topic" regex="on" nosearch="on"}%
--
MikeMannix? - 01 Dec 2001
--
PeterThoeny? - 30 Jan 2003