Keep in mind that many factors can influence the parsing time, including processor, ram, log, etc. however, generally we could derive the following table:
|Benchmark with full features enabled (v0.7)||97,000 lines per second|
|Benchmark with full features enabled (v0.6)||95,000 lines per second|
|Benchmark with full features enabled (v0.5)||100,000 lines per second|
It's fairly easy to run GoAccesss, once it has been installed (no configuration is needed), just run it against your web log file: (-a is optional)
# goaccess -f /var/log/apache2/access.log -a
Now if we want to add more flexibility to GoAccess, we can do a series of pipes. For instance: If we would like to process all
access.log.*.gz we can do:
# zcat -f access.log* | goaccess
For more examples, please check GoAccess' man page
To generate an HTML report, just run it against your web log file: (-a is optional)
# goaccess -f /var/log/apache2/access.log -a > report.html OR # zcat -f /var/log/apache2/access.log* | goaccess -a > report.htmlNote You can run GoAccess via
cat /var/log/apache2/access.log | goaccess -a > report.html
GoAccess should not leak any memory, (tested w/ Valgrind), so mostly it will depend on the log size and the initial parse. For 496,750 parsed lines is
~36.9 MiB (full features enabled).
The following is a handy script that syncs logfiles from an S3 bucket, and aggregates them. Then it creates a GoAccess report out of this log and pushes it back to an S3 bucket. Thanks to Nils De Moor.
Here are some of the top features to add:
See GitHub for more details.
Thanks to Chris Orgill, GoAccess has been successfully built under OpenBSD. Here the shared steps:
(ksh) # pkg_add GeoIP # pkg_add glib2 # export LDFLAGS=-L/usr/local/libNote
GeoIP.hgets put into /usr/local/include, but the configure script doesn't see it. So you may need to change the path under
# ./configure --enable-geoip ; make ; make install
Runs to completion. Can't
--enable-utf8 because only the built-in system ncurses is available, not ncursesw.
If you would like to be notified of new releases of GoAccess then please follow the project on Twitter. Feel free to share it with others too :)