Apache2GDL: How Visitors Browse Your Site

Apache2GDL is a Perl script that automatically generates visitor movement graphs from Apache log files, thus helping you answer the following questions:

Examples

absint.com visitor movement graph

Site: absint.com
Time span: 21 June — 6 July 2005
1039 nodes

aisee.com visitor movement graph

Site: aisee.com
Directory: /memory
Time span: 7 June — 7 July 2005

absint.com visitor movement graph

Site: absint.com
Pages: /aisee/download/win*
Time span: June 2005

absint.com visitor movement graph

Site: absint.com
Directory: /aipop
Time span: June 2005

absint.com visitor movement graph

Site: absint.com
Directories: /aisee, /aicall, /aipop
Time span: 1 July — 8 July 2005

absint.com visitor movement graph

Site: absint.com
Page: /pag/index.html
Time span: June 2005

Nodes represent pages of a given Web site while edges represent visitor movements between them. Node colors and edge thicknesses reflect the number of visitors that have visited a particular page or followed a particular path. Optionally, edges can be labeled with the number of visitors that have followed them.


Downloads

Apache2GDL © 2005 AbsInt Angewandte Informatik GmbH. The script may be freely distributed as long as it is not modified in any way. You may make enhancements for your personal use, but please let us know so we can share them with the aiSee community.


Installation

> gunzip apache2gdl.pl.gz
> chmod 755 apache2gdl.pl

Usage

> cat <log file> | apache2gdl.pl [URL pattern] > <graph file>

The URL pattern should be set to the name of your domain (example.com) or a particular directory within that domain (example.com/something). Example:

> cat /var/log/absint_com_2004_access.log | \
  apache2gdl.pl absint.com/aisee/download > \
  graph.gdl

You can specify a list of directories as well:

> cat /var/log/aisee_com_access.log | \
  apache2gdl.pl aisee.com/gdl aisee.com/svg aisee.com/png > \
  graph.gdl

Instead of writing the graph to a file, you can directly pipe it through aiSee 2 and get a mapped SVG or PNG image of the layout. Examples:

> cat /var/log/access.log | \
  ./apache2gdl.pl aisee.com/apache2gdl | \
  ~/aiSee/bin/aisee.bin -color -svgoutput graph.svg -
Click to view the SVG file automatically generated by aiSee

> cat /var/log/access.log | \
  apache2gdl.pl aisee.com/apache2gdl | \
  aisee -htmloutput graph.html \
  -pngoutput graph.png \
  -lm 0px -tm 0px -scale 100 -
Click to view the HTML page automatically generated by aiSee

aiSee 3 does not support piping graphs through it (yet). You will have to first save the graph as GDL, and then export it:

> cat <log file> | apache2gdl.pl [URL pattern] > graph.gdl
> aisee3 --export graph.png --export graph.html graph.gdl

For further help, type aisee3 --help.

Known issues

Including a trailing slash in the URL pattern may result in a different graph being produced.

Useful links


Reviews

Your feedback

If you have any questions to ask or bugs to report, fire off an email to alex@absint.com. You can also rate the script at freshmeat.net.


Other apps and downloads