v1.2 is a major release that gives the
ability to parse multiple log files in real-time. It also adds the ability to
pipe data in w/o closing the pipe and thus allowing a great amount of flexibility
such as the ability to use
tail -f and still have real-time stats.
In addition to GeoIP2 support and other features and fixes.
For the complete list of features and changes, see the Releases Notes page.
If you would like to be on top of all the changes occuring to GoAccess,
feel free to use the GitHub master branch and build from it. Instructions on how to build GoAccess from Github can be found at the bottom of the Download page.
This is where all the development goes. If you already have Git installed, you can get the latest development version via Git.
Installing GoAccess is pretty easy. Just download, extract and compile it with:
$ wget http://tar.goaccess.io/goaccess-1.2.tar.gz $ tar -xzvf goaccess-1.2.tar.gz $ cd goaccess-1.2/ $ ./configure --enable-utf8 --enable-geoip=legacy $ make # make installNote: The only dependency is ncurses.
Multiple options can be used to configure GoAccess. For a complete up- to-date list of configure options, run ./configure --help
legacywill utilize the original GeoIP databases.
mmdbwill utilize the enhanced GeoIP2 databases.
memhashwill utilize Tokyo Cabinet's in-memory hash database.
btreewill utilize Tokyo Cabinet's on-disk B+ Tree database.
It is easiest to install GoAccess on Linux using the preferred package manager of your Linux distribution. Please note that not all distributions will have the lastest version of GoAccess available
# apt-get install goaccess
Note: This might not always give you the latest stable version. To make sure that you're running the latest stable version of GoAccess see option below.
$ echo "deb http://deb.goaccess.io/ $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/goaccess.list $ wget -O - https://deb.goaccess.io/gnugpg.key | sudo apt-key add - $ sudo apt-get update $ sudo apt-get install goaccess
sudo apt-get install goaccess-tcb.
.debpackages in the official repo are available through
httpsas well. You may need to install
# yum install goaccess
# pacman -S goaccess
# emerge net-analyzer/goaccess
# brew install goaccess
# pkg install sysutils/goaccess
# pkg_add goaccess
# pkgin install goaccess
# curl https://slackbuilds.org/slackbuilds/14.1/system/goaccess.tar.gz | tar xvz # cd goaccess/ # GEOIP=yes ./goaccess.SlackBuild
GoAccess can be used in Windows through Cygwin.
GoAccess has minimal requirements, it's written in C and requires only ncurses. However, below is a table of some optional dependencies in some distros to build GoAccess from source.
|Distro||NCurses||GeoIP (optional)||Tokyo Cabinet (optional)||OpenSSL (optional)|
|Arch Linux||ncurses||geoip||compile from source||openssl|
make, etc for compiling/building software from source. e.g.,
# docker run --restart=always -d -p 80:8080 -v "/home/user/data:/srv/data" allinurl/goaccess
You can place your
goaccess.conf file inside your
/home/user/data directory, which will be used by Docker to
configure goaccess. If no configuration is present, a new empty file will be