Plugins

To add new features, you could install several optional plug-in. Go to the download page to get the package.


Fly/Flydraw

DEPRECATED : W3Perl uses now Jqplot, a javascript library

If you want the old way to generate graphics, you can still install Fly or Flydraw (as the new javascript library does not produce any file).

Installation

  1. rpm -ivh fly-1.6.5-1mdk.i686.rpm
or
  1. tar -zxvf fly-2.0.1.tar.gz
  2. cd fly-2.0.1
  3. ./configure; make ; sudo make install

Default location for the fly tool is /usr/local/bin

Screensize

In order to get stats on user's screensize , you need to insert a javascript tag in your most popular pages (usually homepage).

Insert these this line :
<script language="javascript" type="text/javascript" src="/js/miscstats.js"></script>

You'll have to create a js directory in your server root and put the misctstats.js script inside.
The location of the miscstats.js can be changed but you'll need to change also the link.

Installation

  1. Create a js directory inside your web server tree
  2. Copy the javascript /w3perl/resources/miscstats.js in your js directory
  3. Add the javascript tag in your most popular server pages

Heatmap

In order to get heatmap , you need to insert a javascript in your most popular pages (usually homepage).

Insert this line :
<script language="javascript" type="text/javascript" src="/js/heatmap.js"></script>

The location of the heatmap.js can be changed but you'll need to change also the link.

The script will build new logfiles every day in the /log/ subdirectory found in w3perl install directory.
PHP should be enabled.

Installation

  1. Create a js directory inside your web server tree
  2. Copy the javascript /w3perl/resources/heatmap.js in your js directory
  3. Add the javascript tag in your most popular server pages

Geo::IPfree

The first one is the Geo::IPfree perl module which allow to map IP to country code, allowing to get country stats with IP logfiles. It can be used as an alternative to reverse dns as the perl module use a local database to map IP to country code. Making DNS queries can be very long, but this is the only way to resolve IP to hostname, GeoIPfree doesn't do the same job, IP are not translated to hostname. Geo::IPfree doesn't work (yet) with ipv6 addresses (2012/06)

Installation from source

  1. Get the perl module from http://search.cpan.org/~bricas/Geo-IPfree-1.130450/
  2. Download Geo-IPfree-1.130450.tar.gz (as 02/2013)
  3. perl Makefile.PL
  4. make
  5. make test
  6. make install

- Installation from CPAN

- Unix

  1. perl -MCPAN -e shell
  2. At the prompt 'cpan>' type 'install Geo::IPfree'
- Windows

  1. Go to your Perl installation path (usually C:\Perl)
  2. Type 'ppm'
  3. At the prompt 'PPM>' type 'install Geo::IPfree'
Download the latest ipscountry.dat available, put it within your perl module (/usr/lib/perl5/site_perl/5.8.8/Geo/ in my case).

- Installation from package

This Perl module is already included in most distribution. Search for Perl-Geo-IP and Perl-Geo-Ipfree

Geo::IP

Perl module socket6.pm is required for Perl < 5.14 if your logfile contains ipv6 addresses

Geo::IP perl module is an alternative to Geo::IPfree which also allow to map IP to country code, allowing to get country stats with IP logfiles. It can be used as an alternative to reverse dns as the perl module use a local database to map IP to country code. (update are freely available on the maxmind website). Making DNS queries can be very long, but this is the only way to resolve IP to hostname, GeoIP doesn't do the same job, IP are not translated to hostname.

Step 1 - Installation : GeoIP Library

  1. Get the library from http://www.maxmind.com/download/geoip/api/c/GeoIP-latest.tar.gz
  2. download GeoIP.tar.gz
  3. ./configure
  4. make
  5. make check
  6. make install

if user's install, use ./configure --prefix /home/me/GeoIP instead of ./configure (where /home/me/GeoIP is the location where GeoIP will be installed).

Then if you want to map IP with country code, you'll need the Geo::IP module :

Step 2 - Installation : Geo::IP module

  1. Get the perl module from https://metacpan.org/release/Geo-IP/
  2. Download Geo-IP-1.41.tar.gz (as 02/2013)
  3. perl Makefile.PL
  4. make
  5. make test
  6. make install

if user's install, use perl Makefile.PL LIBS='-L/home/me/GeoIP/lib' INC='-I/home/me/GeoIP/include' PREFIX=/home/me/GeoIP (where /home/me/GeoIP is the location where GeoIP have been installed).

Step 3 - Database

Download the latest GeoIP.dat.gz, uncompress the file and move it over your previous version.
Get also the latest GeoIPv6.dat.gz if your logfile contains ipv6 addresses.

In W3Perl configuration file, $geoipv6_file should pointed to your GeoIPv6.dat file

GeoLiteCity
To get cities stats, you can use the free GeoLiteCity database from maxmind which require the GeoIP library (see Step 1 from Geo::IP).

Step 1 - Installation : GeoIP Library

You need first to install the GeoIP library. See the Geo::IP installation and follow only the first step

Step 2 - Installation : GeoLiteCity database

  1. Download the database file from GeoLiteCity.dat.gz
  2. Uncompress the file and put it in /home/me/GeoIP/share/GeoIP/ if you have installed the package as a user.

In W3Perl configuration file, $geoipcity_file should pointed to your GeoLiteCity.dat file (/home/me/GeoIP/share/GeoIP/GeoLiteCity.dat for a user's install).

PDF report

Stats reports can be exported in PDF thanks to the htmldoc program
You can download the package here

Mail report

In order to send stats report via email, you'll need to install the perl MIME::Lite module (and also Email::Date::Format which is required by the module).

- Installation from source

  1. Get the perl module from MIME::Lite
  2. Download MIME-Lite-3.029.tar.gz (as 08/2012)
  3. perl Makefile.PL
  4. make
  5. make install

if user's install, use perl Makefile.PL LIBS='-L/home/me/lib' INC='-I/home/me/include' PREFIX=/home/me/MIMELite (where /home/me/MIMELite is the location where MIME::Lite will be installed).

There is a faster way to install the package using CPAN :

- Installation from CPAN

- Unix

  1. perl -MCPAN -e shell
  2. At the prompt 'cpan>' type 'install MIME::Lite'
- Windows

  1. Go to your Perl installation path (usually C:\Perl)
  2. Type 'ppm'
  3. At the prompt 'PPM>' type 'install MIME::Lite'
SPIP
At last, if you want W3Perl to extract data from your SPIP database, the perl DBI module should be installed.

Proceed as the MIME::Lite perl module but replace MIME::Lite with DBI.
Once the DBI module installed, you need to install the database connector. (DBD-mysql for a mysql database).


See the FAQ and bug report if something's wrong.
If you have any trouble when installing the package, send me an email about what's wrong. Try to be as much precise as you can.