v1.9.1 Addressed a regression where parsing would unexpectedly halt at the first empty log file. Resolved a C99 problem with initial declarations specifically on CentOS7. Also, fixed minor typographical errors in the German i18n. Support for macOS has been added into the OS detection mechanism.
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 https://tar.goaccess.io/goaccess-1.9.1.tar.gz $ tar -xzvf goaccess-1.9.1.tar.gz $ cd goaccess-1.9.1/ $ ./configure --enable-utf8 --enable-geoip=mmdb $ make # make installNote: The only dependency is ncurses.
autopoint etc for compiling/building software from
Multiple options can be used to configure GoAccess. For a complete up- to-date list of configure options, run ./configure --help
legacy will utilize the original GeoIP databases.
mmdb will utilize the enhanced GeoIP2 databases.
libssl1.1 has been added upstream.
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 latest version of GoAccess available
# apt-get install goaccess
Note: This may not always give you the latest stable version. To make sure that you're running the latest stable version of GoAccess see option below.
$ wget -O - https://deb.goaccess.io/gnugpg.key | gpg --dearmor | sudo tee /usr/share/keyrings/goaccess.gpg >/dev/null $ echo "deb [signed-by=/usr/share/keyrings/goaccess.gpg arch=$(dpkg --print-architecture)] https://deb.goaccess.io/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/goaccess.list $ sudo apt-get update $ sudo apt-get install goaccess
The following signatures were invalid: EXPKEYSIG 97BD1A0133449C3D.... See Github issue to solve the expired key.
GPG error The following signatures couldn't be verified because the public key is not available.
.deb packages in the official repo are available through
https as well. You may need to install
C03B 4888 7D5E 56B0 4671 5D32 97BD 1A01 3344 9C3D
# yum install goaccess
# pacman -S goaccess
# emerge net-analyzer/goaccess
# brew install goaccessNote: If GeoIP is needed, append
--with-libmaxminddb to the command above. You will need to download the City/Country database from MaxMind and use the option
--geoip-database to specify the database.
# pkg install sysutils/goaccess
# pkg_add goaccess
# zypper ar -f obs://server:http http # zypper in 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. See packages to install.
A Docker image has been updated, capable of directing output from an access log. If you only want to output a report, you can pipe a log from the external environment to a Docker-based process:
cat access.log | docker run --rm -i -e LANG=$LANG allinurl/goaccess -a -o html --log-format COMBINED - > report.html
Or for a real-time report:
tail -F access.log | docker run -p 7890:7890 --rm -i -e LANG=$LANG allinurl/goaccess -a -o html --log-format COMBINED --real-time-html - > report.html
For more details, please see the Docker section on README.md file
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.