The sys admin's daily grind: New logfile tool
Just as a craftsman is unlikely to purchase a new angle grinder every month, sys admins are unlikely to change constantly their tried and trusted tools. Columnist Charly Kühnast ditches this conservative philosophy this month, lured by the charms of a new logfile tool.
A system administrator's choice of weapons for dueling with the daily grind is likely to be pretty conservative. For example, Webalizer has been my tool of choice for analyzing web server logs for something approaching eternity. However, there is no shortage of alternatives: AWStats, AWFFull, and others are available for adventurous admins. But, why experiment? The other tools just do the same thing as Webalizer – that is, create intuitive evaluations from web server logs.
I am tempted to be unfaithful, however, if I need a real-time summary, with precision down to a second. Apachetop gives you a line on this, and I wrote about it some time back . Since then, a better tool has hit the market: Go Access . This tool parses the web server logfile, evaluates it up to the present point in time, and displays the results at the command line. Go Access reads typical logfiles in Common Logfile format, but also in Combined Logfile format. If you have something more exotic, you have the option of teaching Go Access how to handle it.
Go Access writes its output continuously. Thus, I can watch the web server work in real time. In the simplest case, you just pass in a single parameter, the path to the logfile, at run time:
goaccess -f /var/log/apache2/access.log
Another very practical aspect is the ability to add an IP address and, at the same time, tell Go Access to ignore access to it:
goaccess -f /var/log/apache2/access.log-e 10.50.1.25
This approach avoids evaluating access by the monitoring systems (Nagios, Icinga, or load balancers), all of which cyclically check whether the server is still alive.
The command-line display is divided into sections Go Access calls modules. The modules are listed from the top down, so you need to scroll to see them all. Some lucky admins have access to portrait-format displays – not me.
Figure 1 only shows the first four modules and the first line of the fifth. In fact, however, Go Access displays 11 modules, including overviews of the most commonly used browsers and client operating systems, the most frequently referring sites, and search keys that prompted search engines to point users to my website. Another practical thing is that Go Access painstakingly differentiates between crawlers and genuine browsers in its evaluations.
A module only shows the "Top 6" list for its category. More details are quickly accessed, however: Each module is represented by a number in the header; for example,
6 - Operating Systems. If you press 6 on the keyboard and then O (for open Detail View), you are treated to a full list view. Pressing F1 displays more interactive shortcuts.
Authoritative reports on closed logfiles, long the domain of classic log analyzers like Webalizer and others, are naturally part of Go Access's feature set. It looks like I'll be sending Webalizer and Apachetop off to the happy hunting grounds in the near future.
- "The Sysadmin's Daily Grind: Webalizer Xtended" by Charly Kühnast, Linux Magazine, February 2006, pg. 65
- Go Access: http://goaccess.prosoftcorp.com
Buy this article as PDF
New partnership will bring more and better CS training to US schools
Criminals offer online help over Tor network
Sophisticated malware is still present on Joomla and WordPress sites around the world.
Future versions of Ubuntu's code service will support the popular Git version control system used with Linux and other open source projects.
New release marks the arrival of AMD’s unified driver strategy.
A new study by IDC charts big changes in the big hardware market.
Azure CTO says Redmond has already considered the unthinkable.
Lead developer quells rumors that the Debian version is slated for center stage.
MSBuild is now just another GitHub project as Redmond continues its path to the light.
Malware could pass data and commands between disconnected computers without leaving a trace on the network.