Analog
Search Word Report generated by Analog (CE) | |
Original author(s) | Stephen Turner |
---|---|
Developer(s) | Stephen Turner, Chris Tilley |
Initial release | June 21, 1995 |
Stable release | 6.0.16
/ July 27, 2019 |
Repository | github.com/c-amie/analog-ce |
Written in | C |
Operating system | Linux/Unix-Like/Mac/Windows |
Type | Web Traffic Analytics |
License | GNU GPL |
Website | www.c-amie.co.uk/software/analog/ |
Analog (CE) is a web log analyzer that creates pretty simple reports using a web servers logs. It will show a lot of data based on the logs. Some of the information it shows is slightly useful, a lot of it is not.
The original Analog is a really old web log analyzer. It was originally written by Stephen Turner in 1995. The last Analog release is version 6.0 from 2004. Someone going by the nick C:Amie maintains a "fork" called Analog CE. That's the one you want if you want to use Analog. There's not really anything new since 2004 in that work beyond a few new User-Agents and very minor tweaks like that, it is essentially software that's stood still for 15+ years.
|
|
Features And Usability[edit]
A typical report made by analog.
Let's start what what's really bad feature-wise compared to the alternatives since there is a fair chance that you found this page because you're considering using it:
- Analog does not support any kind of log-data file for partial log-parsing.
This is a very important point worth considering. Alternatives like webalizer create a "history file" with the important data from logs and use that to store old data. That means that you can run webalizer and immediately eradicate the old log-files:
for f in /home/httpd/vhosts/*/conf/webalizer.conf ; do
nice -n 19 /bin/webalizer -Y -c $f 2>/dev/null
done
for f in /home/httpd/vhosts/*/statistics/logs/access_log;do
echo > $f
done
You can't do anything similar with Analog. This means that it has two very clear draw-backs:
- You have to keep a years worth of lots of you want to create a yearly report
- Running analog takes an increasing amount of time as the amount of logs you parse grows.
Storage could also be a consideration though it's not really a problem unless you run a website with thousands of visitors on a box with a very small SSD or HDD.
Now to what you actually get:
Analog creates a long report that lists:
|
|
Most of the reports have a vertical line bar. Some of them have a pie-chart.
The report it creates can be useful, and it's better than looking at raw longs, but it's not all that great.
Verdict And Conclusion[edit]
Analog isn't something we can recommend for one simple reason: You have to keep logs around for it to create reports with historical data. It can't analyze logs and make some statistics and keep those so you can throw the logs away, so you have to keep old logs around for as long as you want historical information in your statistics. This may not be something you care about, if you enjoy having a years worth of logs around then that's a non-issue. It does means that it will take increasingly long to create reports using Analog.
The reports Analog creates are somewhat useful. The report it creates isn't very pretty-looking, it's not eye candy. It does have all the important data-points you can create using logs listed, there are a lot of different sections listed in the report.
Accuracy of the reports are a concern with Analog: The default configuration file has just a few ROBOTINCLUDE
entries. That doesn't mean it's useless: You can configure it to ignore all known robots if you spend a whole lot of time editing a configuration file.
Analog is, all in all, not something we recommend that anyone installs and uses for anything for the one simple reason we've already mentioned a few times: It requires you to keep old logs around. If you're fine with that and you want something that does work and does show neat statistics then it might.. be for you. Or not. There are alternatives like webalizer and AWStats that do the same job better.
Installation[edit]
git clone https://github.com/c-amie/analog-ce/
cd analog-ce
make
Now comes the very hard part: analog CE comes with a analog.cfg-sample
file. You need to cp that file to a new configuration file and edit that file. The cloned GitHub source tree has a folder named docs/
with documentation.
The two most important, and essential, directives you need in your analog.cfg file are:
LOGFILE /logs/access_log.*
OUTFILE Report.html
The OUTFILE
should be a file in a web servers root if you want it to be able to see the statistics on the web.
You may also need APACHELOGFORMAT
line with your web servers log format in parenthesis (()
) instead of quotes. This must be before the LOGFILE directive. If you use Apache and your virtual host is configured to use:
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
Then you'll want the Analog configuration to have a APACHELOGFORMAT
line that says:
APACHELOGFORMAT (%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\")
You need to copy the images/
folder into the web-accessible folder where you generate the OUTFILE
report.
Usage[edit]
Analog expects to find a analog.cfg
in the folder it's executed from. It does not appear to have any command-line arguments like -c configfile.cfg
. That's a problem if you want to analyze different logs for different virtual hosts.
There is a way around this. You can make symbolic links to the analog binary and the lang/
folder (it won't run without it) and make a script that changes into a folder for each virtual host you want logs analyzed for, each with it's own analog.cfg
configuration file. Not elegant, but it's one way to do it.
Alternatives[edit]
Webalizer (and probably AWStats too) is a better alternative if you want to get some statistics about a web server based on logs alone.
Open Web Analytics is another solution if you want more than a log-analyzer. It's a more complete statistics server written in PHP that can collect statistics by calling it from PHP or by serving client-side JavaScript. It's not something like Analog that parses logs, though it does serve the same purpose.
Links[edit]
The only place to get Analog is to get Analog CE from c-amie.co.uk/software/analog/.
Enable comment auto-refresher