I am now using Report Magic for Analog with my Analog installation. My last attempt had failed miserably, but this time it went extremely well. I found Logwrangler which does a lot of the work. I encountered an incompatibility between Report Magic and an updated graphics library. Once the patch was applied the program ran well. All that was left was tuning the report layout and the interaction with Logwrangler.
This installation builds on my existing analog setup. This is outlined in Analog for Multiple Sites. Please get that setup working before attempting this configuration.
Setting up Logwrangler
I downloaded the Logwrangler package from http://www.reppep.com/~pepper/analog/logwrangler/. This was untarred in the home directory of the user I had been using logwrangler.pl needed to be updated to find the analog
and rmagic
binaries. I also updated it to place the rmagic.in
i in the Logwrangler subdirectory. This is a patch to apply the changes.
--- logwrangler.pl.orig 2010-04-29 22:41:28.000000000 -0400 +++ logwrangler.pl 2010-05-12 00:04:24.000000000 -0400 @@ -16,3 +16,3 @@ # logs for DNSTran to process -my $analog = ("/usr/local/bin/analog"); +my $analog = ("/usr/bin/analog"); # analog binary @@ -20,3 +20,3 @@ # directory containing Analog configuration files -my $rmagic = "/usr/local/reportmagic/rmagic.pl"; +my $rmagic = "/usr/bin/rmagic"; # path to rmagic.pl @@ -86,3 +86,3 @@ if ($verbosity > 0) { print "$site "; } - @args = ("$rmagic", "-statistics-File_In=$datapath/$site", "-reports-File_Out=$outputpath/$sitepath/index.html"); + @args = ("$rmagic", "$basedir/rmagic.ini", "-statistics-File_In=$datapath/$site", "-reports-File_Out=$outputpath/$sitepath/"); # if your rmagic.pl can't find rmagic.ini, you can add the full path as the second member of the list above
logtable.pl will need be copied or moved to ~/bin as logwrangler.pl will look for it there.
Setting up Report Magic
Report magic is available as a package for Ubuntu. Installed this version. Copy /usr/share/doc/rmagic/examples/samples/reportmagic-org.ini
to ~/logwrangler/rmagic.ini
. This is a starting configuration for rmagic.
The installed /usr/share/rmagic/wadg/rm/Setting.pm
will fail when it creates a 0x0 Image. It needs to be patched at line 910 as follows.
--- Settings.pm.orig 2010-05-12 00:33:55.000000000 -0400 +++ Settings.pm 2010-05-12 00:34:20.000000000 -0400 @@ -909,3 +909,3 @@ # - my $g = new GD::Image(0,0); + my $g = new GD::Image(1,1);
You may also want to link the images in /usr/share/
Integrating the Existing Analog Setup
Create etc/rmagic.inc
. It will need to change the output format to computer, and turn off all the graphics which are on
# etc/rmagic.inc - report magic specific overrides of common configuration/ # Change output format OUTPUT COMPUTER # Turn of graphics DOMCHART OFF ORGCHART OFF SEARCHWORDCHART OFF BROWSUMCHART OFF OSCHART OFF STATUSCHART OFF PROCTIMECHART OFF VHOSTCHART OFF REDIRVHOSTCHART OFF FAILVHOSTCHART OFF INTSEARCHQUERYCHART OFF INTSEARCHWORDCHART OFF USERCHART OFF REDIRUSERCHART OFF FAILUSERCHART OFF
Create the directories ~/logwranger/cfg
and ~/logwrangler/data
. Copy ~/etc/example_week.conf
to the new cfg
directory. Remove both the CHARTDIR
and LOCALCHARTDIR
parameters. Change the OUTFILE
to logwrangler/data/example-week.txt
. (NOTE: underscores need to be replaced by hyphens.) Finally add a CONFIGFILE
for etc/rmagic.inc
at the end. It should now read:
# example_month.conf HOSTNAME "Example.com - Month" OUTFILE logwranger/data/example-month.txt CONFIGFILE etc/common_month.inc CONFIGFILE etc/example_vhost.inc CONFIGFILE etc/log_month.inc CONFIGFILE etc/rmagic.inc
Run logwrangler/logwrangler.pl
from your home directory. Analog should generate output in ~/logwrangler/data
. Report Magic should then convert this to a report in ~logwrangler/stat
. Link ~logwrangler/stat
into your web-server directory.
Tuning the Output
The analog reports generated can be tuned by turning them on or off in the etc/rmagic.inc
file.
If you have a number of report sets you may want to add a footer which navigates from the reports back to the reports menu. Create ~/logwrangler/footer.html
containing.
<!-- logwrangler/footer.html --> <center><a href="../index.html" target="_top" name="Return to Report menu"> <b>Return to Report menu</b></a><br /></center>
Now change ~/logwranger/rmagic.ini
so that the website
section includes:
Company_Logo = logwrangler/footer.html
Review the Report Magic for Analog documentation. You may want to consider these changes:
- update
statistics
section commenting outReverse_Time = 1
; - update
statistics
section addingNo_Robots = 1
; and - updating
quick
section to change theRows
list.
Implementing More Reports
Copy the remaining .conf
files from ~/etc
to ~/logwrangler/cfg
. Apply the same edits that were done to the original file. These are:
- Remove both the
CHARTDIR
andLOCALCHARTDIR
parameters; - Change the
OUTFIL
E directory path tologwrangler/data/
; - Change the
OUTFILE
filename replacing underscores with hyphens; - Change the
OUTFILE
file extension to.txt
; and - Add a
CONFIGFILE
foretc/rmagic.inc
at the end
If you haven’t already done so, copy or link ~/logwrangler/logtable.pl
to ~/bin
. This program builds an index file for the reports that have been generated.
Setup a cronjob to run ${HOME}/logwrangler/logwrangler.pl -q
. Run ${HOME}/logwrangler/logwrangler.pl -v
to verify all your configuration files.