AWStats for Tomcat

AWStats for Tomcat

Under Development

This is under development, and is subject to many changes

  • Using awstats-6.8

  • Runs on caje.

  • Current path of software is /ucd/opt/sakai/tmp

  • Changes made to awstats itself

    • Created config /ucd/opt/sakai/tmp/awstats-6.8/wwwroot/cgi-bin/awstats.ss_test_tc.conf based off of awstats.model.conf for smartsite test

      • Set SiteDomain (smartsite-test.ucdavis.edu)

      • Set HostAliases (added all appserver names)

      • Disabled DNS lookups (DNSLookup=0)

      • Set DirData to /ucd/opt/sakai/tmp/awstats-6.8/var/lib/awstats

      • Set DirIcons to http://caje.ucdavis.edu/awstats/icon/

      • Put load balancer IP in SkipHosts

    • Created config /ucd/opt/sakai/tmp/awstats-6.8/wwwroot/cgi-bin/awstats.ss_test_tc.conf based off of awstats.model.conf for smartsite test

      • Set SiteDomain (smartsite.ucdavis.edu)

      • Set HostAliases (added all appserver names)

      • Disabled DNS lookups (DNSLookup=0)

      • Set DirData to /ucd/opt/sakai/tmp/awstats-6.8/var/lib/awstats

      • Set DirIcons to http://caje.ucdavis.edu/awstats/icon/

      • Put load balancer IP in SkipHosts

  • Command Decision: Decided to not run as CGI, but generate HTML externally.

    • Set up all the sundry stuff on webserver (path /var/www/html/sakai/awstats/* came from what was in webroot in the awstats home)

  • Since awstats supports perl style inclusions and since we have many different access logs, decided to import files atomically and left them bzip'd.

  • Created import script /ucd/opt/sakai/tmp/scripts/awimport.sh

  • It works basically by using find and sort to generate a chronological list of access log files for import, and then importing them using awstats.pl

  • The following variables are set and are global across all environments(eg test,prod):

    • DATA_DIR - Path to store file lists of already imported files

    • AWSTATS_HOME - Path where to find awstats.pl

    • AWSTATS_TOOLS - Path where to find awstats helper perl scripts

    • BZCAT_CMD - Full path to program to cat bzip2 files.

  • The following variables are specific to each environment:

    • AW_CONFIG - base file name of the awstats.pl config file. Since its unique to an environment its uses as a key for tons of things

    • AFS_LOGDIR - Path to find all the access log files. If used in conjunction with log_accum.pl it should be the path where the month directories live.

    • HTML_DIR - Path to place html result files

  • If a access log file name exists in the file $DATA_DIR/$AW_CONFIG.dat, it is skipped. While awstats does have this capability, it is also wordy about it, and this is more efficient.

  • Once all imports are complete, it generates the reports. It does this:

    • First create a save point for the HTML files. If this directory exists, clean it.

    • Save the HTML files by moving the current HTML_DIR to the save directory.

    • Create the HTML_DIR

    • cd into it and run awstats_buildstaticpages.pl to build the HTML files.