# Release 1.10 Wednesday, February 11, 2026
ADDED
Added new bar charts to the terminal UI for a quicker visual read of metrics.
ADDED
Added city-level entries to the GEOLOCATION panel.
ADDED
Added optional zlib support to parse compressed log files.
ADDED
Added panel reordering in the TUI, letting you customize the dashboard layout.
ADDED
Added sorting for panels in the HTML report.
ADDED
Added the ability to expand and collapse subitems within TUI panels for easier navigation of large datasets.
ADDED
Added a TX Amount percent column to the TUI for clearer traffic share insight.
ADDED
Added the ability to prepend the virtual host to a request via --concat-vhost-req
DEPRECATED
Deprecated `--no-column-names` in favor of a unified TUI dashboard.
FIXED
Fixed log tailing edge cases, including empty reads and date specificity overrides from the CLI.
FIXED
Fixed stability issues in multi-threaded parsing and during Ctrl+C with multiple jobs.
FIXED
Fixed inability to override date specificity from the CLI.
FIXED
Fixed dry-run lines being counted as processed during config format testing.
IMPROVED
Improved the TUI spinner and progress display for smoother, clearer feedback during parsing.
REFRESHED
Refreshed the HTML dashboard styling and theme visuals.
UPDATED
Updated browser and OS detection lists, including macOS 26 (Tahoe) and Alibaba Cloud Linux.
UPDATED
Updated packaging targets, adding Debian Trixie while dropping Debian Buster and i386 builds.
UPDATED
Updated Swedish, Chinese and Japanese translations
UPDATED
Updated Dockerfile to use openssl-dev for compatibility with SSL_CIPHER_standard_name(3ssl).
# Release 1.9.4 Monday, March 31, 2025
ADDED
Added an azimuthal (globe) projection to the HTML report for geolocation, providing a less distorted view of the global map.
ADDED
Added 'apple-touch-icon' for improved iPhone home screen support, enabling quick access to reports directly from the home screen.
ADDED
Added 'aria-*' attributes to HTML report for better accessibility, ensuring that the report is more inclusive for screen readers and other assistive technologies.
ADDED
Added 'theme-color' '<meta>' tag to the HTML report for better integration with mobile devices, allowing the browser's address bar to match the report's theme color.
ADDED
Added additional validation checks to ensure the existence of file paths provided in CLI options, preventing errors.
ADDED
Added WebSocket authentication to support both local-generated JSON Web Tokens (JWT) and external verification methods. This enhancement enables easy integration with external authentication systems while ensuring CSRF protection for token refresh requests.
CHANGED
Changed WebSocket server to avoid swapping bytes on big-endian platforms, fixing compatibility issues on AIX systems.
FIXED
Fixed the issue where zooming/panning the map would unexpectedly skip or jump back, providing a smoother user experience.
FIXED
Fixed the issue where the same mime types were displayed as duplicates due to different casing by normalizing mime types before adding them to the storage, ensuring consistent reporting.
REPLACED
Replaced div elements with more semantic HTML elements like <section>, <header>, and <article>, improving the structure and accessibility of the report.
UPDATED
Updated the list of supported browsers and operating systems to ensure more accurate tracking and reporting.
UPDATED
Updated the method of parsing the browser list for bots/crawlers, enabling the capture of previously difficult-to-parse bots, allowing for more precise targeting and better analytics.
# Release 1.9.3 Friday, May 31, 2024
ADDED
Added additional common bots to the list.
ADDED
Added Address Sanitizer via ' to the configure options for debugging purposes.
--enable-asan'
FIXED
Fixed inability to parse JSON keys containing dots.
FIXED
Fixed out-of-bounds access for invalid HTTP status codes.
FIXED
Fixed out-of-bounds access when parsing a log in serial processing mode.
FIXED
Fixed regression introduced in 8f570c, which caused duplicate counts upon restoring from disk via '
--restore'.
# Release 1.9.2 Friday, April 12, 2024
ADDED
Added World Map to the Geo Location panel on the HTML report.
ADDED
Added additional non-official/standard HTTP status codes such as Caddy's 0 HTTP status among others.
ADDED
Added support for 'on strptime for non-glibc systems, such as musl libc in Alpine Linux (Docker container), enabling the use of%z' '
--tz'
CHANGED
Changed the ' options to filter by hostname directly without the use of wildcards, e.g.,--hide/ignore-referrer' '
--ignore-referrer=wiki.google.com'.
FIXED
Fixed inability to parse duplicate specifiers during log format parsing.
FIXED
Fixed regression which previously hindered the ability to modify log, date, and time formats within the TUI dialog. i.e., '# goaccess access.log -c'.
REPLACED
Replaced 'remote_ip' with 'client_ip' for Caddy's JSON format, allowing the use of trusted proxies.
UPDATED
Updated Caddy JSON example log format to handle headers correctly.
UPDATED
Updated Swedish i18n.
# Release 1.9.1 Tuesday, February 05, 2024
ADDED
Added support for macOS to the OS detection.
FIXED
Fixed C99 mode issue with initial declarations [CentOS7].
FIXED
Fixed minor typographical, orthographic, and grammatical errors in the German translation.
FIXED
Fixed a regression issue wherein parsing would halt at the first empty log file.
# Release 1.9 Tuesday, January 30, 2024
ADDED
Added multi-threaded log processing with ' for a boost in parsing speed, achieving an improvement ranging from 1.26 to 3.65x faster.
--jobs=<num>'
ADDED
Added the 'SEARCH' method to the list of HTTP request methods.
ADDED
Added compatibility to include the Traefik log format.
ADDED
Added the ability to gracefully handle SIGQUIT as a signal for shutdown.
ALTERED
Altered WebSocket server initialization, ensuring it takes place after log-format checks.
DEPRECATED
Deprecated ' now, only the--output-format'; ' option is permissible.
--output'
IMPLEMENTED
Implemented mutex locking to prevent a TZ environment race condition.
FIXED
Fixed a potential heap overflow when checking a request for bots.
FIXED
Fixed sorting of child items on HTML panels when sorting a column via the UI.
FIXED
Fixed an issue where, in some cases, the referer host wouldn't be extracted properly
FIXED
Fixed the miscategorization of Android 12.1 under operating systems.
FIXED
Fixed TUI and temporarily ignored SIGINT during subdialog execution via Ctrl+C.
UPDATED
Updated the list of browsers/bots.
# Release 1.8.1 Tuesday, October 31, 2023
ADDED
Added latest Android and macOS versions to the list of OSs.
FIXED
Fixed issue when trying to apply a regex on an invalid value (HTML report).
FIXED
Fixed issue with D3.js xScale.domain() going out of boundaries in certain cases.
PREVENT
Prevent setting default static files when no static-file options are defined in config file.
# Release 1.8 Saturday, September 30, 2023
ADDED
Added dual-stack support to the WebSocket server.
ADDED
Added Debian Bookworm to the official deb repo.
ADDED
Added Ubuntu Lunar to the official deb repo.
FIXED
Fixed compiler error on macOS 10.12.
UPDATED
Updated bootstrap to v3.4.
UPDATED
Updated FontAwesome with additional icons for upcoming major release.
UPDATED
Updated Japanese translation.
UPDATED
Updated OS display from Macintosh to macOS.
UPDATED
Updated to D3.js v7 (latest) including charts.js code.
# Release 1.7.2 Friday, March 31, 2023
ADDED
Added a color-coding scheme to HTTP status codes.
ADDED
Added ' command line option to output external JS+CSS files. Great when used with Content Security Policy (CSP).
--external-assets'
ENSURE
Ensure there's a fallback for 'Windows' if it appears on the user-agent.
ENSURE
Ensure we construct the WebSocket URL in a way that supports multiple use cases when used along ' and--ws-url' '
--port'.
FIXED
Fixed a segfault due to a null pointer exception on FreeBSD.
FIXED
Fixed build with '
--disable-nls'.
FIXED
Fixed invalid read (heap-buffer-overflow) when parsing an XFF spec via JSON.
FIXED
Fixed segfault when parsing a specific XFF specifier.
# Release 1.7.1 Tuesday, February 28, 2023
ADDED
Added 'inlang' for easy localization (i18n) updates. https://inlang.com/editor/github.com/allinurl/goaccess
ADDED
Added nanosecond parsing option via the 'specifier. Great for parsing%n' 'Traefik' JSON logs duration field.
CHANGED
Changed Docker workflow to build a docker image on different architectures {'arm64' & 'amd64'}.
FIXED
Fixed issue with ' where it did not process them as such.
--unknowns-as-crawlers'
# Release 1.7 Saturday, December 31, 2022
ADDED
Added an option to classify unknown OS and browsers as crawlers using `--unknowns-as-crawlers`.
ADDED
Added highlighting to certain metrics on the HTML report for readability.
ADDED
Added a new panel that displays ASN data for GeoIP2 and legacy databases. Great for detecting malicious traffic and blocking accordingly.
ADDED
Added an ASN metric per IP/host.
CHANGED
Changed and prioritize user's browsers list over heuristics.
ENSURE
Ensure `--geoip-database=<path>` can be used multiple times to support different databases.
FIXED
Fixed invalid read when loading the list of agents for an IP.
FIXED
Fixed issue where a file containing a NUL `\0` character would crash the program.
UPDATED
Updated Swedish i18n.
# Release 1.6.5 Monday, October 31, 2022
UPDATED
Updated Dockerfile build stage to use alpine:3.
UPDATED
Updated deb build to use the right libncursesw6 dependency.
# Release 1.6.4 Friday, September 30, 2022
ADDED
Added Korean translation (i18n).
ADDED
Added the ability to use filenames as virtualhosts using '
--fname-as-vhost=<regex>'.
ENABLED
Enabled crawlers/bots under the OSs panel instead of being shown as 'Unknown'.
UPDATED
Updated the format on the command-line help output.
# Release 1.6.3 Thursday, August 31, 2022
ENABLED
Enabled DNS thread when resolving a host and outputting real-time HTML. This helps avoid stalling the WS server on busy connections.
FIXED
Fixed issue where it would not properly parse an XFF if the 'specifier was already set.
%h'
FIXED
Fixed possible XSS issues when using ' and--html-custom-css' ' by allowing valid filenames.
--html-custom-js'
# Release 1.6.2 Thursday, July 14, 2022
ADDED
Added `Android 12` to the list of OSs.
ADDED
Added `macOS 12 Ventura` to the list of OSs.
FIXED
Fixed implicit declaration build issue due to `timegm(3)` on `BSDs` and `macOS`.
FIXED
Fixed issue where timezone conversion would be performed twice on a given date.
# Release 1.6.1 Thursday, June 30, 2022
ADDED
Added a `--ping-interval=<secs>` in an attempt to keep the WebSocket connection opened.
ADDED
Added support for timezone conversion via `--datetime-format=<format>` and `--tz=<timezone>`.
ADDED
Added the ability to reconnect to the WebSocket server after 1 sec with exponential backoff (x20).
FIXED
Fixed issue where an invalid client connection would stall data out to clients via the WebSocket server.
FIXED
Fixed an issue where real-time data would be parsed multiple times under `Cygwin`.
# Release 1.6 Tuesday, May 31, 2022
CHANGED
Changed slightly how the XFF field is specified. See man page for details.
ENSURE
Ensure city is displayed with the DBIP City Lite database.
ENSURE
Ensure no 'cleaning up resources' message is displayed if `--no-progress` is passed.
ENSURE
Ensure the maximum number of items per panel defaults to 1440 (24hrs) when passing `--date-spec=min`.
FIXED
Fixed issue when parsing a delimited XFF field followed by a host IP.
FIXED
Fixed issue where some data was buffered on the WebSocket server before it was sent to each client.
FIXED
Fixed issue where the WebSocket server would fail with POLLNVAL consuming 100% CPU.
FIXED
Fixed segfault when attempting to open an unresolved IP on mac/BSDs.
# Release 1.5.7 Thursday, April 28, 2022
UPDATED
Updated Caddy's JSON format. This should address CADDY's v2.5.0 change.
UPDATED
Updated Chinese translation (i18n).
UPDATED
Updated GeoIP module so it defaults to native language name (i18n) or fall-back to English.
UPDATED
Updated Russian translation (i18n).
UPDATED
Updated Ukrainian translation (i18n).
# Release 1.5.6 Wednesday, March 30, 2022
ADDED
Added `--anonymize-level=<1|2|3>` option to specify IP anonymization level.
ADDED
Added minute specificity to the Visitors panel via `--date-spec=min`.
ADDED
Added the ability to toggle on/off panels on the HTML report.
CHANGED
Changed stderr to stdout on non-error output when exiting goaccess.
# Release 1.5.5 Monday, January 31, 2022
ADDED
Added mechanism to automatically parse additional bots.
CHANGED
Changed area chart interpolation to 'monotone'. This should avoid the issue where the interpolated curve has a bend into the negative space.
CHANGED
Changed build to use debugging symbols even for release builds.
CHANGED
Changed order on which we verify bots to be the first thing we check. This adds a slight improvement on parsing time.
ENSURE
Ensure we initialize DNS resolver conditions and mutexes before they're used.
FIXED
Fixed possible buffer over-read for cases where a '\0' could be reached early when parsing a log line.
FIXED
Fixed possible data race on UI spinner thread.
FIXED
Fixed regression where a lot of robots were not detected by GoAccess.
# Release 1.5.4 Saturday, December 25, 2021
ADDED
Added AWS ALB to the predefined logs format list --log-format=AWSALB.
ENSURE
Ensure we lock our pipe/websocket writer before broadcasting message.
ENSURE
Ensure we require a valid host token even when we're not validating the IP.
ENSURE
Ensure we simply update the TUI once after tailing multiple files.
ENSURE
Ensure we simply update the UI once after tailing multiple files.
FIXED
Fixed buffer overflow when checking if an HTTP code was a 404 on an empty status code.
OPTIMIZED
Optimized terminal and HTML UI output when tailing multiple files.
UPDATED
Updated DB PATH error message to be more descriptive.
# Release 1.5.3 Thursday, November 25, 2021
ADDED
Added additional crawlers to the default list.
ADDED
Added Italian translation (i18n).
ADDED
Added 'macOS 12' to the list of OS.
FIXED
Fixed buffer overflow caused by an excessive number of invalid requests with multiple logs.
FIXED
Fixed visualization issue on the HTML report for panels with disabled chart.
# Release 1.5.2 Tuesday, September 28, 2021
ADDED
Added .avi to the list of static requests/extensions.
CHANGED
Changed label from 'Init. Proc. Time' to 'Log Parsing Time'.
FIXED
Fixed issue where lengthy static-file extension wouldn't account certain valid requests.
FIXED
Fixed possible buffer underflow when checking static-file extension.
FIXED
Fixed segfault when attempting to parse an invalid JSON log while using a JSON log format.
FIXED
Fixed segfault when ignoring a status code and processing a line > '4096' chars.
# Release 1.5.1 Wednesday, June 30, 2021
CHANGED
Changed official deb repo so it now builds ' in order to support request lines longer than 4096.
--with-getline'
ENSURE
Ensure there's no tail delay if the log file hasn't changed.
FIXED
Fixed data race when writing to a self-pipe and attempting to stop the WS server.
FIXED
Fixed inability to close expanded panel when pressing 'q' on TUI.
FIXED
Fixed possible data race during parsing spinner label assignment.
INCREASED
Increased the maximum number of files to monitor from '512' to '3072'.
# Release 1.5 Wednesday, May 26, 2021
ADDED
Added a Docker container based isolated build environment (Debian).
ADDED
Added Dark Mode detection to the HTML report.
ADDED
Added the ability for the WebSocket server to bind to a Unix-domain socket.
ADDED
Added the ability to parse IPs enclosed within brackets (e.g., IPv6).
CHANGED
Changed categorization of requests containing 'CFNetwork' to 'iOS' when applicable.
CHANGED
Changed command line option from ' to--hide-referer' '
--hide-referrer'.
CHANGED
Changed command line option from ' to--ignore-referer' '
--ignore-referrer'.
FIXED
Fixed a potential division by zero.
FIXED
Fixed inability to parse IPv6 when using a 'CADDY' log format.
FIXED
Fixed issue where a 'BSD' OS could be displayed as Linux with certain user-agents.
FIXED
Fixed memory leak when a JSON value contained an empty string (e.g., JSON/CADDY format).
FIXED
Fixed possible buffer overflow on a WS packet coming from the browser.
REFACTORED
Refactored a substantial part of the storage codebase for upcoming filtering/search capabilities (issue #117).
REFACTORED
Refactored DB storage to minimize memory consumption up to '35
%'.
UPDATED
Updated default 'AWS Elastic Load Balancing' log format.
UPDATED
Updated German translation.
UPDATED
Updated page size to 24 on the HTML report.
UPDATED
Updated UNIX OS categories.
# Release 1.4.6 Sunday, February 28, 2021
ADDED
Added additional feed reader clients.
ADDED
Added additional browsers and bots to the main list.
ADDED
Added command line option ' to log unknown browsers and OSs.
--unknowns-log'
ADDED
Added 'Referer' to the pre-defined 'Caddy JSON' log format.
ADDED
Added support for real-time piping as non-root user.
ADDED
Added the ability to Handle case when IPv4 is encoded as IPv6 in GeoIP1/legacy.
ENSURE
Ensure we capture linux (lowercase) when extracting an OS.
FIXED
Fixed a regression in parsing Google Cloud Storage or possibly other non-JSON formats.
FIXED
Fixed inability to parse escaped formats.
FIXED
Fixed issue when using 'with%s' 'strptime(3)' under musl libc. This addresses mostly the Docker image.
FIXED
Fixed possible buffer over-read for certain log-format patterns.
FIXED
Fixed segfault when attempting to process a malformed JSON string.
FIXED
Fixed segfault when setting an empty log-format from the TUI dialog.
FIXED
Fixed sorting on hits and visitors when larger than INT_MAX.
UPDATED
Updated CloudFront pre-defined log-format to reflect the latest fields.
UPDATED
Updated 'Dockerfile' image to use 'alpine:3.13' instead of edge due to compatibility issue with the GNU coreutils.
# Release 1.4.5 Tuesday, January 26, 2021
FIXED
Fixed build issue due to initial declarations only allowed in C99 mode (e.g., CentOS7).
# Release 1.4.4 Monday, January 25, 2021
ADDED
Added 'Caddy' to the list of pre-defined log formats.
ADDED
Added command line option ' to disable status validation.
--no-strict-status'
ADDED
Added native support to parse JSON logs.
ADDED
Added the ability to process timestamps in milliseconds using '
%*'.
ENSURE
Ensure TUI/CSV/HTML reports are able to output 'uint64_t' data.
ENSURE
Ensure we allow UI render if the rate at which data is being read is greater than '8192' req/s.
ENSURE
Ensure we don't re-render Term/HTML output if no data was read/piped.
FIXED
Fixed build configure to work on NetBSD.
FIXED
Fixed issue where it would send data via socket each second when managed by systemd.
FIXED
Fixed issue where parser was unable to parse syslog date with padding.
FIXED
Fixed issue where some items under browsers.list were not tab separated.
FIXED
Fixed issue where the format parser was unable to properly parse logs delimited by a pipe.
FIXED
Fixed issue where T.X. Amount metrics were not shown when data was piped.
FIXED
Fixed issue where XFF parser could swallow an additional field.
FIXED
Fixed memory leak when using 'as date/time specifier.
%x'
REPLACED
Replaced select(2) with poll(2) as it is more efficient and a lot faster than select(2).
UPDATED
Updated Swedish i18n.
# Release 1.4.3 Friday, December 04, 2020
ADDED
Added the ability to set how often goaccess will parse data and output to the HTML report via '
--html-refresh=<secs>'.
CHANGED
Changed how TLS is parsed so the Cypher uses a separate specifier. It now uses 'for the TLS version and%K' 'for the Cypher.
%k'
FIXED
Fixed issue where real-time output would double count a rotated log. This was due to the change of inode upon rotating the log.
UPDATED
Updated man page to reflect proper way of 'tail -f' a remote access log.
# Release 1.4.2 Monday, November 16, 2020
ADDED
Added the ability to show 'Encryption Settings' such as 'TLSv1.2' and Cipher Suites on its own panel.
ADDED
Added the ability to show 'MIME Types' such as 'application/javascript' on its own panel.
CHANGED
Changed Debian build to use mmdb instead of libgeoip (legacy).
ENSURE
Ensure the HTML report defaults to widescreen if viewport is larger than '2560px'.
FIXED
Fixed inability to properly process multiple logs in real-time.
FIXED
Fixed issue where named PIPEs were not properly seed upon generating filename.
FIXED
Fixed issue where served time metrics were not shown when data was piped.
REMOVED
Removed unnecessary padding from SVG charts. Improves readability on mobile.
# Release 1.4.1 Monday, November 09, 2020
ADDED
Added additional browsers and bots to the main list.
ADDED
Added 'Android 11' to the list of OSs.
ADDED
Added 'macOS 11.0 Big Sur' to the list of OSs.
ADDED
Added 'average' to each panel overall metrics.
ADDED
Added '.dmg', '.xz', and '.zst' to the static list.
ADDED
Added extra check to ensure restoring from disk verifies the content of the log against previous runs.
ADDED
Added Russian translation (i18n).
ADDED
Added Ukrainian translation (i18n).
ADDED
Added support for HTTP status code '308'.
ADDED
Added the ability for 'get_home ()' to return NULL on error, instead of terminating the process. Great if using through systemd.
ADDED
Added the ability to read lowercase predefined log formats. For instance, ' or--log-format=COMBINED' '
--log-format=combined'.
CHANGED
Changed how FIFOs are created and avoid using predictable filenames under '/tmp'.
CHANGED
Changed ' to use whole referrer instead of referring site.
--ignore-referer'
ENSURE
Ensure Cache Status can be parsed without sensitivity to case.
ENSURE
Ensure restored data enforces ' if used by truncating accordingly.
--keep-last'
FIXED
Fixed a few memory leaks when restoring from disk.
FIXED
Fixed blank time distribution panel when using timestamps.
FIXED
Fixed build issue due to lack of 'mmap' on 'Win'/'Cygwin'/'MinGW'.
FIXED
Fixed crash in mouse enabled mode.
FIXED
Fixed double free on data restore.
FIXED
Fixed inability to keep processing a log when using '
--keep-last'.
FIXED
Fixed inability to properly parse truncated logs.
FIXED
Fixed inability to properly count certain requests when restoring from disk.
FIXED
Fixed issue where it would not parse subsequent requests coming from stdin (tail).
FIXED
Fixed issue where log truncation could prevent accurate number counting.
FIXED
Fixed issue where parsed date range was not rendered with '
--date-spec'.
FIXED
Fixed issue where parser would stop regardless of a valid ' value.
--num-test'
FIXED
Fixed issue where restoring from disk would increment 'MAX.TS'.
FIXED
Fixed possible incremental issue when log rotation occurs.
FIXED
Fixed possible XSS when getting real-time data into the HTML report.
FIXED
Fixed potential memory leak when failing to get root node.
FIXED
Fixed real-time hits count issue for certain scenarios.
FIXED
Fixed segfault in 'Docker' due to a bad allocation when generating FIFOs.
FIXED
Fixed 'Unknown' Operating Systems with 'W3C' format.
REMOVED
Removed unnecessary include from parser.c so it builds in macOS.
UPDATED
Updated each panel overall UI to be more streamlined.
UPDATED
Updated French translation.
UPDATED
Updated German translation.
UPDATED
Updated Spanish translation.
UPDATED
Updated sigsegv handler.
# Release 1.4 Monday, May 18, 2020
ADDED
Added a caching storage mechanism to improve parsing raw data and data rendering.
ADDED
Added a mechanism to avoid counting duplicate data when restoring persisted data from disk.
ADDED
Added additional option to the HTML report to set a maximum number of items per page to 3.
ADDED
Added a list of podcast-related user agents under '
%sysconfdir%'.
ADDED
Added 'Android 10' to the list of Android codenames.
ADDED
Added a 'widescreen' layout to the HTML report (e.g., 4K TV/KPI Dashboard).
ADDED
Added 'Beaker', 'Brave', and 'Firefox Focus' to the list of browsers
ADDED
Added command line option --user-name=username to avoid running GoAccess as root when outputting a real-time report.
ADDED
Added 'DuckDuckGo' and 'MSNBot' browsers to the browsers.list.
ADDED
Added 'facebookexternalhit' to the default crawler list.
ADDED
Added German translation (DE).
ADDED
Added Kubernetes Nginx Ingress Log Format to the default config file.
ADDED
Added 'macOS Catalina' to the list of OSX codenames.
ADDED
Added minor CSS updates to HTML report.
ADDED
Added missing header '<sys/socket.h>' to fix FreeBSD build
ADDED
Added new 'Edg' token to the list of browsers.
ADDED
Added ' command line to disable client IP validation
--no-ip-validation'
ADDED
Added ' and--persist' ' options to persist to disk and restore a dump from disk.
--restore'
ADDED
Added Portuguese translation (pt-BR)
ADDED
Added Swedish translation (SV)
ADDED
Added the ability to parse server cache status and a new panel to display those metrics.
CHANGED
Changed accumulated time to work by default on ' and--persist' '
--restore'.
CHANGED
Changed back how the hits and visitors percentage is calculated to be more intuitive.
CHANGED
Changed Geo Location panel display default to show only if database file is provided ('LIBMAXMINDDB').
CHANGED
Changed initial processing time from secs to HH:MM:SS in HTML output.
CHANGED
Changed ' for the static HTML report to allow no limit on output entries.
--max-items'
CHANGED
Changed required 'gettext' version to 0.19
CHANGED
Changed to ignore 'SIGPIPE' with 'SIG_IGN'
CHANGED
Changed version to 10.15 for 'macOS Catalina'.
ENSURE
Ensure proper escaping on default AWSELB log format.
ENSURE
Ensure valid requests counter is not affected on duplicate entries when restoring data.
FIXED
Fixed issue preventing Ctrl-C (SIGINT) for the curses interface to stop the program.
FIXED
Fixed issue where HTML report wouldn't update the tables when changing per page option.
FIXED
Fixed issue where it wouldn't find either the user's or global config file.
FIXED
Fixed issue where changing the number of items per page in the HTML report would not automatically refresh the tables.
FIXED
Fixed issue where last updated label was not updated in real-time.
FIXED
Fixed issue where overall date range wasn't showing the right start/end parse dates.
FIXED
Fixed issue where tailing a file could potentially re-parse part of the log.
FIXED
Fixed memory leak when fetching country/continent while using 'LIBMAXMINDDB'.
FIXED
Fixed several '-Wcast-qual' warnings.
FIXED
Fixed unwanted added characters to the HTML output.
FIXED
Fixed websocket issue returning a 400 due to request header size.
INCREASED
Increased 'MAX_LINE_CONF' so a JSON string can be properly parsed from the config file.
REMOVED
Removed deprecated option ' from config file.
--geoip-city-data'
REMOVED
Removed unnecessary dependency from snapcraft.yaml.
REMOVED
Removed Vagrantfile per #1410
REMOVED
Removed some old browsers from the default curated list.
REPLACED
Replaced TokyoCabinet storage for a non-dependency in-memory persistent storage.
UPDATED
Updated Dockerfile.
# Release 1.3 Friday, November 23, 2018
ADDED
Added ability to store accumulated processing time into DB_GEN_STATS tcb file via ' command line option.
--accumulated-time'
ADDED
Added additional Apache status codes to the list.
ADDED
Added a few feed readers to the list.
ADDED
Added 'Android 8 Oreo' to the list of OSs.
ADDED
Added 'Android Pie 9' to the list of OSs.
ADDED
Added --anonymize-ip command line option to anonymize ip addresses.
ADDED
Added --browsers-file command line option to load a list of crawlers from a text file.
ADDED
Added byte unit (PiB) to C formatter and refactored code.
ADDED
Added byte unit (PiB) to JS formatter.
ADDED
Added Chinese translation (i18n).
ADDED
Added French translation (i18n).
ADDED
Added 'date specifier to the allowed date character specifiers.
%h'
ADDED
Added "HeadlessChrome" to the list of browsers.
ADDED
Added --hide-referer command line option to hide referrers from report.
ADDED
Added HTTP status code 429 (TOO MANY REQUESTS).
ADDED
Added IGNORE_LEVEL_PANEL and IGNORE_LEVEL_REQ definitions.
ADDED
Added Japanese translation (i18n).
ADDED
Added macOS 10.14 Mojave to the list of OSs.
ADDED
Added "Mastodon" user-agent to the list of crawlers/unix-like.
ADDED
Added new fontawesome icons and use angle arrows in HTML paging.
ADDED
Added new purple theme to HTML report and default to it.
ADDED
Added --no-parsing-spinner command line option to switch off parsing spinner.
ADDED
Added .ogv and ogg static file extension (ogg video, Ogg Vorbis audio).
ADDED
Added OS X version numbers when outputting with --real-os.
ADDED
Added parsing mechanism in an attempt capture more bots and to include unspecified bots/crawlers.
ADDED
Added --pidfile command line option to the default config file.
ADDED
Added Spanish translation (i18n).
ADDED
Added SSL support for Docker goaccess build.
ADDED
Added support to the WebSocket server for openssl-1.1*.
ADDED
Added the ability to show/hide a chart per panel in the HTML report.
ADDED
Added transparency to the navigation bar of the HTML report.
ADDED
Added "WhatsApp" user-agent to the list of crawlers.
CHANGED
Changed default db folder so it adds the process id (PID). --db-path is required now when using --load-from-disk.
CHANGED
Changed Dockerfile to build from the current source.
CHANGED
Changed 'hits' to be right-aligned on TUI.
CHANGED
Changed to use faster slide animations on HTML report.
CHANGED
Changed wording from 'Bandwidth' to the proper term 'Tx. Amount'.
ENSURE
Ensure database filenames used by btree are less predictable.
ENSURE
Ensure HTML templates, CSS and JS files are minified when outputting report.
ENSURE
Ensure key phrases from Google are added even when https is used.
ENSURE
Ensure live report updates data & charts if tab/document has focus.
ENSURE
Ensure multiple 'Yandex' crawlers are properly parsed.
ENSURE
Ensure Safari has priority over most crawlers except the ones that are known to have it.
ENSURE
Ensure the request protocol on its own is properly parsed.
ENSURE
Ensure the right number of tests are performed against the given log.
ENSURE
Ensure user configuration is parsed first when available.
ENSURE
Ensure wss:// is used when connecting via HTTPS.
ENSURE
Ensure XFF parser takes into account escaped braces.
FIXED
Fixed a regression where fifo-in/out would fail with ENXIO.
FIXED
Fixed a regression where it would return EXIT_FAILURE on an empty log.
FIXED
Fixed a (ssh) pipeline problem with fgetline()/fgets() when there is a race for data on stdin.
FIXED
Fixed broken X-Forwarded-For (XFF) %~ specifier in certain parsing cases.
FIXED
Fixed conf.filenames duplication problem if logs are via pipe.
FIXED
Fixed float percent value on JSON/HTML output for locales using decimal comma.
FIXED
Fixed issue where it was not possible to establish a Web Socket connection when attempting to parse and extract HTTP method.
FIXED
Fixed issue where log formats with pipe delimiter were not properly parsed.
FIXED
Fixed memory leak after config file path has been set (housekeeping).
FIXED
Fixed memory leak when adding host to holder introduced in c052d1ea.
FIXED
Fixed possible memory leak when hiding specific referrers.
FIXED
Fixed several JS jshint warnings.
FIXED
Fixed sudo installs on TravisCI.
FIXED
Fixed UNDEFINED time range in HTML report when VISITORS panel was ignored.
FIXED
Fixed unnecessary closing span tags from template.
FIXED
Fixed use-after-free when two color items were found on color_list.
# Release 1.2 Tuesday, March 07, 2017
ADDED
Added a Dockerfile.
ADDED
Added Amazon S3 bucket name as a VirtualHost (server block).
ADDED
Added a replacement for GNU getline() to dynamically expand line buffer while maintaining real-time output.
ADDED
Added --daemonize command line option to run GoAccess as daemon.
ADDED
Added several improvements to the HTML report on small-screen devices.
ADDED
Added option to the HTML report to auto-hide tables on small-screen devices.
ADDED
Added --process-and-exit command line option to parse log and exit.
ADDED
Added several feed readers to the list of browsers.
ADDED
Added "-" single dash per convention to read from the standard input.
ADDED
Added support for MaxMind GeoIP2.
ADDED
Added the ability to read and follow from a pipe such as "tail -f access.log | goaccess -"
ADDED
Added the ability to specify multiple logs as input sources, e.g.: "goaccess access.log access.log.1" while maintaining real-time output.
ADDED
Added time unit (seconds) to the processed time label in the HTML/terminal output.
ADDED
Added visitors' percent column to the terminal dashboard.
CHANGED
Changed D3 charts to dim Y-axis on mouseover.
CHANGED
Changed D3 charts to reflect HTML column sort.
CHANGED
Changed D3 charts to render only if within the viewport. This improves the overall real-time HTML performance.
CHANGED
Changed HTML report tables to render only if within the viewport.
CHANGED
Changed percentage calculation to be based on the total within each panel.
ENSURE
Ensure start/end dates are updated real-time in the HTML output.
ENSURE
Ensure "window.location.hostname" is used as the default WS server host. In most cases, this should avoid the need for specifying " Simply using--ws-url=host". " should suffice.
--real-time-html"
FIXED
Fixed issue on HTML report to avoid outputting scientific notation for all byte sizes.
FIXED
Fixed integer overflow when calculating bar graph length on terminal output.
FIXED
Fixed issue where global config file would override command line arguments.
FIXED
Fixed issue where it wouldn't allow loading from disk without specifying a file when executed from the cron.
FIXED
Fixed issue where parser couldn't read some X-Forwarded-For (XFF) formats. Note that this breaks compatibility with the original implementation of parsing XFF, but at the same time it gives much more flexibility on different formats.
FIXED
Fixed issue where specifying fifo-in/out wouldn't allow HTML real-time output.
FIXED
Fixed issue where the wrong number of parsed lines upon erroring out was displayed.
FIXED
Fixed issue where the WebSocket server prevented to establish a connection with a client due to invalid UTF-8 sequences.
FIXED
Fixed percent issue when calculating visitors field.
UPDATED
Updated the list of crawlers.
# Release 1.1.1 Wednesday, November 23, 2016
ADDED
Added data metric's "unique" count on each panel to the JSON/HTML outputs.
CHANGED
Changed D3 bar charts to use .rangeBands and avoid extra outer padding.
FIXED
Fixed mouseover offset position issue on D3 bar charts.
FIXED
Fixed possible heap overflow when an invalid status code was parsed and processed. This also ensures that only valid HTTP status codes are parsed >=100 or <= 599.
FIXED
Fixed sluggish D3 chart re-rendering by changing how x-axis labels are displayed in the HTML report.
# Release 1.1 Tuesday, November 08, 2016
ADDED
Added a new layout to the HTML report and additional settings and changes.
ADDED
Added --crawlers-only command line option to display crawlers/bots only.
ADDED
Added --fifo-in and --fifo-out command line options to set websocket FIFO reader/writer.
ADDED
Added --no-html-last-updated command line option.
ADDED
Added --num-tests command line option.
ADDED
Added --html-prefs command line option to to set default preferences for the HTML report.
ADDED
Added "Amazon S3" Log Format to the list of predefined options.
ADDED
Added "Android 7.1 Nougat" to the list of OSs.
ADDED
Added "Android Marshmallow 6.0.1" to the list of OSs.
ADDED
Added "Android Nougat 7.0" to the list of OSs.
ADDED
Added "Feed Wrangler" to the list of feeds.
ADDED
Added "Go-http-client" to the list of browsers.
ADDED
Added "MicroMessenger" (WeChat) to the list of browsers.
ADDED
Added "SemrushBot" to the list of crawlers.
ADDED
Added "Remote User" panel to capture HTTP authentication requests. Use %e within the log-format variable to enable this panel.
ADDED
Added tebibyte unit to the byte to string function converter.
ADDED
Added the ability to parse reverse proxy logs that have multiple IPs. This adds the ability to parse the "X-Forwarded-For" field in a reverse proxy setup.
ADDED
Added the ability to show which token didn't match log/date/time pattern. This also ensures that in the absence of data, its output is not treated as error but instead it produces an empty report.
ADDED
Added the ability to specify a WebSocket protocol (ws|wss) through --ws-url.
ADDED
Added the request query string to the W3C format.
ADDED
Added TLS/SSL support to the HTML real-time report.
CHANGED
Changed browser classification for Google Cloud Clients.
CHANGED
Changed how "Darwin" OS was reported to display AppName instead.
CHANGED
Changed default W3C log format to use the URL path instead of full request.
CHANGED
Changed HTML default number of items on each table to 7.
CHANGED
Changed request parser to allow empty query strings.
CHANGED
Changed default HTML output theme to darkBlue.
ENSURE
Ensure every version of iOS is broken down under the OS panel.
ENSURE
Ensure latest JSON data is fast-forwarded when connection is opened. GoAccess now sends the latest JSON data to the client as soon as the WebSocket connection is opened.
ENSURE
Ensure localStorage is supported and enabled in the HTML report
ENSURE
Ensure unknown countries/continents are listed.
FIXED
Fixed D3 chart width overflow issue on Edge.
FIXED
Fixed integer to string key conversion for unique visitors. This fixes the issue where resulting keys would collide with existing keys and thus not keeping the right visitors count on certain panels.
FIXED
Fixed memory leak when unable to URL decode %q specifier.
FIXED
Fixed memory leak when unable to URL decode %U specifier.
FIXED
Fixed month name abbreviation on app.js.
FIXED
Fixed percentage integer overflow with large numbers on 32bits platforms.
FIXED
Fixed percent calculation due to integer division rounding to zero.
FIXED
Fixed possible code injection when outputting an HTML report.
FIXED
Fixed segfault when using options -H or -M without an argument.
REMOVED
Removed timestamp from the HTML report title tag.
# Release 1.0.2 Tuesday, July 05, 2016
ADDED
Added minor changes to the HTML report stylesheet.
ADDED
Added the ability to specify the WebSocket port within --ws-url.
ADDED
Added the proper byte swap functions used by Sun Solaris.
ADDED
Added the proper default --http-method/protocol values on the config file.
CHANGED
Changed bar transition to scale delay dynamically to the length of the dataset.
FIXED
Fixed build issue on platforms lacking of open_memstream() by refactoring the JSON module to use its own memory buffer.
FIXED
Fixed issue where the server wouldn't send cached buffer to slow clients.
FIXED
Fixed OS X build check of ncursesw.
IMPLEMENTED
Implemented a throttle mechanism for slow clients to avoid caching too much data on the server-side.
REMOVED
Removed flickering on D3 line and bar chart redraw.
# Release 1.0.1 Friday, June 17, 2016
ADDED
Added Android version number along with the codename when using --real-os, e.g., "Lollipop 5.1".
ADDED
Added some missing headers and function checks to configure.ac.
FIXED
Fixed a regression where it wouldn't allow abbreviated date and time formats such as %F or %T.
FIXED
Fixed build issues on systems running GLIBC older than 2.9, such as RHEL <= 5.
FIXED
Fixed issue where it wouldn't send the whole buffer to a socket causing the real-time-html WebSocket server to progressively consume a lot more memory.
FIXED
Fixed memory leak when using getline and follow mode enabled.
FIXED
Fixed some buffer initialization issues on read_line() and perform_tail_follow().
FIXED
Fixed uint types in sha1 files.
# Release 1.0 Thursday, June 09, 2016
ADDED
Added --enable-panel=<PANEL> command line option to display the given module.
ADDED
Added --json-pretty-print command line option to output pretty json.
ADDED
Added --log-format=<format> command-line shortcuts for standard log formats.
ADDED
Added --origin command line option to match the origin WebSocket header.
ADDED
Added --output=<file.[html|csv|json]> as a shortcut to --output-format.
ADDED
Added a complete real-time functionality to the HTML output.
ADDED
Added an option to set the max number of items to show per panel.
ADDED
Added D3 Visualziations to the HTML dashboard.
ADDED
Added metadata metrics to the each of the panels (JSON output)
ADDED
Added option to specify time distribution specificity.
ADDED
Added the ability to download a JSON file from the HTML report.
ADDED
Added the ability to output multiple formats on a single log parse.
ADDED
Added the ability to set the date specificity in hours.
ADDED
Added the ability to sort all HTML tables on all panels.
ADDED
Added the ability to specify a custom CSS and JS file to the HTML report.
ADDED
Added user-agents to the JSON output per each host.
ADDED
Added "Vivaldi" to the list of browsers.
BOOTSTRAPIFY
Bootstrapify the HTML dashboard.
CHANGED
Changed configure.ac to use LDFLAGS instead of CFLAGS where applicable.
CHANGED
Changed default terminal color scheme to 256 Monokai if terminal supports 256 colors.
CHANGED
Changed GoAccess license to The MIT License (MIT)
CHANGED
Changed the visitors panel to display its dates continuously instead of top.
DEFAULT
Default to 256 Monokai color scheme if terminal supports 256 colors.
DEFAULT
Default to display HTTP method/protocol (if applicable).
DISPLAY
Display the children's Max. T.S. as the parent's top Max. T.S.
ENSURE
Ensure the parent's Avg. T.S. displays parent's Cum. T.S. over parent's Hits.
FIXED
Fixed color issue when switching from the color scheme dialog.
FIXED
Fixed cross platform build issue when ncurses is built with and without termlib=tinfo.
FIXED
Fixed curses header window issue where it wouldn't clear out on small window sizes.
FIXED
Fixed issue where tail mode wouldn't parse full lines using getline().
FIXED
Fixed minor background color issue when using ncurses 6.
FIXED
Fixed possible division by zero when calculating percentage.
FIXED
Fixed singly link list node removal.
FIXED
Fixed still reachable memory leak on GeoIP cleanup (geoip legacy >= 1.4.7).
FIXED
Fixed various Valgrind's still reachable memory leaks.
REMOVED
Removed -Wredundant-decls.
# Release 0.9.8 Monday, February 29, 2016
ADDED
Added a more complete list of static extensions to the config file.
ADDED
Added "Android 6.0 Marshmallow" to the list of OSs.
ADDED
Added --no-tab-scroll command line option to disable scroll through panels on TAB.
ADDED
Added the first and last log dates to the overall statistics panel.
ENSURE
Ensure GoAccess links correctly against libtinfo.
ENSURE
Ensure static content is case-insensitive verified.
FIXED
Fixed bandwidth overflow issue (numbers > 2GB on non-x86_64 arch).
FIXED
Fixed broken HTML layout when html-method/protocol is missing in config file.
REFACTORED
Refactored parsing and display of available modules/panels.
# Release 0.9.7 Monday, December 21, 2015
ADDED
Added "Squid native" log format to the config file.
FIXED
Fixed integer overflow when getting total bandwidth using the on-disk storage.
FIXED
Fixed issue where a timestamp was stored as date under the visitors panel.
FIXED
Fixed issue where config dialog fields were not cleared out on select.
FIXED
Fixed issue where "Virtual Hosts" menu item wasn't shown in the HTML sidebar.
# Release 0.9.6 Tuesday, October 27, 2015
ADDED
Added --dcf command line option to view the default config file path.
ADDED
Added --ignore-status the ability to ignore parsing status codes.
ADDED
Added "Darwin" to the list of OSs.
FIXED
Fixed segfault when appending data to a log (follow) without virtualhosts.
# Release 0.9.5 Thursday, October 22, 2015
ADDED
Added major performance improvements to the default storage when parsing and storing data (~%44 less memory, ~37% faster).
ADDED
Added the ability to parse virtual hosts and a new panel to display metrics per virtual host.
ADDED
Added the ability to parse HTTP/2 requests.
ADDED
Added the ability to use GNU getline() to parse full line requests.
ADDED
Added the ability to output debug info if a log file is specified, even without --enable-debug.
ADDED
Added OS X "El Capitan".
ADDED
Added WebDav HTTP methods and HTTP status from RFC 2518 and RFC 3253.
FIXED
Fixed detection of some Googlebots.
FIXED
Fixed issue where time served metrics were not shown when loading persisted data.
FIXED
Fixed linker error on OSX: ld: library not found for -lrt.
FIXED
Fixed percentage on the HTML output when excluding IPs.
REMOVED
Removed GLib dependency and refactored storage functionality. By removing this dependency, GoAccess is able to store data in a more efficient manner, for instance, it avoids storing integer data as void* (generic typing), thus greatly improving memory consumption for integers.
# Release 0.9.4 Tuesday, September 08, 2015
ADDED
Added --all-static-files command line option to parse static files containing a query string.
ADDED
Added --invalid-requests command line option to log invalid requests to a file.
ADDED
Added additional overall metric - total valid requests.
ADDED
Added "specifier to move forward through a log string until a non-space char is found.
%~"
ADDED
Added the ability to parse native Squid access.log format.
FIXED
Fixed a few issues in the configuration script.
FIXED
Fixed inability to parse color due to a missing POSIX extension. "ERR:Invalid bg/fg color pairs"
# Release 0.9.3 Wednesday, August 26, 2015
ADDED
Added --no-column-names command line option to disable column name metrics.
ADDED
Added a default color palette (Monokai) to the config file.
ADDED
Added AWS Elastic Load Balancing to the list of predefined log/date/time formats.
ADDED
Added CloudFlare status codes.
ADDED
Added column headers for every enabled metric on each panel.
ADDED
Added cumulative time served metric.
ADDED
Added "DragonFly" BSD to the list of OSs.
ADDED
Added maximum time served metric (slowest running requests).
ADDED
Added "Slackbot" to the list of crawlers/browsers.
ADDED
Added the ability to parse the query string specifier "from a log file.
%q"
ADDED
Added the ability to process logs incrementally.
ADDED
Added the ability to set custom colors on the terminal output.
DISABLED
Disabled REFERRERS by default.
ENSURE
Ensure bandwidth metric is displayed only if %b specifier is parsed.
FIXED
Fixed issue where the --sort-panel option wouldn't sort certain panels.
FIXED
Fixed several compiler warnings.
SET
Set predefined static files when no config file is used.
UPDATED
Updated "Windows 10" user agent from 6.4 (wrong) to 10.0.(actual)
# Release 0.9.2 Monday, July 06, 2015
ADDED
Added ability to fully parse browsers that contain spaces within a token.
ADDED
Added multiple user agents to the list of browsers.
ADDED
Added the ability to handle time served in milliseconds as a decimal number `%L`.
ADDED
Added the ability to parse a timestamp in microseconds.
ADDED
Added the ability to parse Google Cloud Storage access logs.
ADDED
Added the ability to set a custom title and header in the HTML report.
ADDED
Added "as timestamp log-format specifier.
%x"
ENSURE
Ensure agents" hash table is destroyed upon exiting the program.
ENSURE
Ensure "Game Systems" are processed correctly.
ENSURE
Ensure visitors panel header is updated depending if crawlers are parsed or not.
FIXED
Fixed issue where the date value was set as time value in the config dialog.
FIXED
Fixed memory leak in the hits metrics when using the in-memory storage (GLib).
# Release 0.9.1 Tuesday, May 26, 2015
ADDED
Added --hl-header command line option to highlight active panel.
ADDED
Added "Applebot" to the list of web crawlers.
ADDED
Added "Microsoft Edge" to the list of browsers.
ADDED
Added additional Nginx-specific status codes.
ENSURE
Ensure dump_struct is used only if using __GLIBC__.
ENSURE
Ensure goaccess image has an alt attribute on the HTML output for valid HTML5.
ENSURE
Ensure the config file path is displayed when something goes wrong (FATAL).
ENSURE
Ensure there is a character indicator to see which panel is active.
FIXED
Fixed Cygwin compile issue attempting to use -rdynamic.
FIXED
Fixed issue where a single IP did not get excluded after an IP range.
FIXED
Fixed issue where requests showed up in the wrong view even when --no-query-string was used.
FIXED
Fixed issue where some browsers were not recognized or marked as "unknown".
FIXED
Fixed memory leak when excluding an IP range.
FIXED
Fixed overflows on sort comparison functions.
FIXED
Fixed segfault when using on-disk storage and loading persisted data with -a.
REMOVED
Removed keyphrases menu item from HTML output.
SPLIT
Split iOS devices from Mac OS X.
# Release 0.9 Thursday, March 19, 2015
ADDED
Added --geoip-database command line option for GeoIP Country/City IPv6.
ADDED
Added "Windows 10 (v6.4)" to the real windows user agents.
ADDED
Added ability to double decode an HTTP referer and agent.
ADDED
Added ability to sort views through the command line on initial load.
ADDED
Added additional data values to the backtrace report.
ADDED
Added additional graph to represent the visitors metric on the HTML output.
ADDED
Added AM_PROG_CC_C_O to configure.ac
ADDED
Added "Android Lollipop" to the list of operating systems.
ADDED
Added "average time served" metric to all panels.
ADDED
Added "bandwidth" metric to all panels.
ADDED
Added command line option to disable summary metrics on the CSV output.
ADDED
Added numeric formatting to the HTML output to improve readability.
ADDED
Added request method specifier to the default W3C log format.
ADDED
Added the ability to ignore parsing and displaying given panel(s).
ADDED
Added the ability to ignore referer sites from being counted. A good case scenario is to ignore own domains. i.e., owndomain.tld. This also allows ignoring hosts using wildcards. For instance, *.mydomain.tld or www.mydomain.* or www?.mydomain.tld
ADDED
Added time/hour distribution module. e.g., 00-23.
ADDED
Added "visitors" metrics to all panels.
CHANGED
Changed AC_PREREQ macro version so it builds on old versions of autoconf.
CHANGED
Changed GEOIP database load to GEOIP_MEMORY_CACHE for faster lookups.
CHANGED
Changed maximum number of choices to display per panel to 366 from 300.
ENSURE
Ensure config file is read from home dir if unable to open it from %sysconfdir% path.
FIXED
Fixed array overflows when exceeding MAX_* limits on command line options.
FIXED
Fixed a SEGFAULT where sscanf could not handle special chars within the referer.
FIXED
Fixed character encoding on geolocation output (ISO-8859 to UTF8).
FIXED
Fixed issue on wild cards containing "?" at the end of the string.
FIXED
Fixed issue where a "Nothing valid to process" error was triggered when the number of invalid hits was equal to the number of valid hits.
FIXED
Fixed issue where outputting to a file left a zero-byte file in pwd.
IMPROVED
Improved parsing of operating systems.
REFACTORED
Refactored log parser so it allows with ease the addition of new modules. This also attempts to decouple the core functionality from the rendering functions. It also gives the flexibility to add children metrics to root metrics for any module. e.g., Request A was visited by IP1, IP2, IP3, etc.
RESTYLED
Restyled HTML output.
# Release 0.8.5 Sunday, September 14, 2014
FIXED
Fixed SEGFAULT when parsing a malformed request that doesn't have HTTP status.
# Release 0.8.4 Monday, September 08, 2014
ADDED
Added --444-as-404 command line option to handle nginx non-standard status code 444 as 404.
ADDED
Added --4xx-to-unique-count command line option to count client errors (4xx) to the unique visitors count. Now by default it omits client errors (4xx) from being added to the unique visitors count as they are probably not welcomed visitors. 4xx errors are always counted in panels other than visitors, OS & browsers.
ADDED
Added and updated operating systems, and browsers.
ADDED
Added excluded IP hits count to the general statistics panel on all reports.
ADDED
Added HTTP nonstandard code "444" to the status code list.
FIXED
Fixed compile error due to missing include <sys/types.h> for type off_t (gcc 4.1).
FIXED
Fixed issue when excluding IPv4/v6 ranges.
REMOVED
Removed request status field restriction. This allows parsing logs that contain only a valid date, IPv4/6 and host.
# Release 0.8.3 Monday, July 28, 2014
FIXED
Fixed SEGFAULT when parsing a CLF log format and using --ignore-crawlers.
FIXED
Fixed parsing conflict between some Opera browsers and Chrome.
FIXED
Fixed parsing of several feed readers that are Firefox/Safari-based.
FIXED
Fixed Steam detection.
ADDED
Added Huawei to the browser's list and removed it from the OS's list.
# Release 0.8.2 Monday, July 20, 2014
ADDED
Added --version command line option.
ADDED
Added --ignore-crawlers command line option to ignore crawlers.
ADDED
Added ability to parse dates containing whitespaces in between, e.g., "Jul 15 20:13:59" (syslog format).
ADDED
Added a variety of browsers, game systems, feed readers, and podcasts.
ADDED
Added missing up/down arrows to the help section.
ADDED
Added the ability to ignore multiple IPv4/v6 and IP ranges.
ADDED
Added the PATCH method according to RFC 5789.
FIXED
Fixed GeoLocation percent issue for the JSON, CSV and HTML outputs.
FIXED
Fixed memory leak when excluding one or multiple IPs.
# Release 0.8.1 Monday, June 16, 2014
ADDED
Added ability to add/remove static files by extension through the config file.
ADDED
Added ability to print backtrace on segmentation fault.
ESCAPED
Escaped JSON strings correctly according to [RFC4627].
FIXED
Fixed encoding issue when extracting keyphrases for some HTTP referrers.
FIXED
Fixed issue where HTML bar graphs were not shown due to numeric locale.
FIXED
Fixed issue with URIs containing "\r?\n" thus breaking the corresponding output.
MAKE
Make sure request string is URL decoded on all outputs.
# Release 0.8 Tuesday, May 20, 2014
ADDED
Added APT-HTTP to the list of browsers.
ADDED
Added data persistence and ability to load data from disk.
ADDED
Added IE11 to the list of browsers.
ADDED
Added IEMobile to the list of browsers.
ADDED
Added multiple command line options.
ADDED
Added Nagios check_http to the list of browsers.
ADDED
Added parsing progress metrics - total requests / requests per second.
ADDED
Added the ability to parse a GeoLiteCity.dat to get the city given an IPv4.
CHANGED
Changed the way the configuration file is parsed. This will parse all configuration options under ~/.goaccessrc or the specified config file and will feed getopt_long with the extracted key/value pairs. This also allows the ability to have comments on the config file which won't be overwritten.
ENSURE
Ensure autoconf determines the location of ncurses headers.
FIXED
Fixed issue where geo_location_data was NULL.
FIXED
Fixed issue where GoAccess did not run without a tty allocated to it.
FIXED
Fixed potential memory leak on --log-file realpath().
FIXED
Fixed Solaris build errors.
IMPLEMENTED
Implemented an on-memory hash database using Tokyo Cabinet. This implementation allows GoAccess not to rely on GLib's hash table if one is needed.
IMPLEMENTED
Implemented large file support using an on-disk B+ Tree database. This implementation allows GoAccess not to hold everything in memory but instead it uses an on-disk B+ Tree database.
TRIMMED
Trimmed leading and trailing whitespaces from keyphrases module.
# Release 0.7.1 Monday, February 17, 2014
ADDED
Added --no-color command line option to turn off color output.
ADDED
Added --real-os command line option to get real OS names, e.g., "Android, Windows, Mac".
ADDED
Added ability to log debug messages to a file.
ADDED
Added ability to parse tab-separated log format strings.
ADDED
Added ability to support terminals without colors.
ADDED
Added command line option to append HTTP method to request.
ADDED
Added command line option to append HTTP protocol to request.
ADDED
Added long options to command-line.
ADDED
Added missing "Win 9x 4.90" (Windows Me) user-agent.
ADDED
Added missing Windows RT user-agent.
ENSURE
Ensure mouse click does not reset expanded module if it is the same.
FIXED
Fixed Amazon CloudFront tab-separated log format.
FIXED
Fixed "FreeBSD style" ncursesw built into system.
FIXED
Fixed HTML report issue where data cell would not wrap.
FIXED
Fixed issue when isatty() could not find a valid file descriptor.
FIXED
Fixed SymbianOS user-agent and retrieve its version.
# Release 0.7 Monday, December 15, 2013
ADDED
Added a command line option to ignore request query strings.
ADDED
Added additional compiler flags & fixed several warnings.
ADDED
Added additional static file extensions.
ADDED
Added country per IP to HOSTS module (HTML & JSON).
ADDED
Added DEBUG mode to Makefile & -O2 to default release.
ADDED
Added GEOLOCATION report to all outputs - includes continents/countries.
ADDED
Added IP resolver to HTML and JSON output.
ADDED
Added module numbers to each module header.
ADDED
Added the ability to output JSON and CSV.
ADDED
Added Windows NT 6.3 (Win 8.1) to the list.
FIXED
Fixed buffer overflow issue with realpath.
NEW
New HTML report - HTML5 + CSS styles.
PROPERLY
Properly split request line into the three request modules.
# Release 0.6.1 Monday, October 07, 2013
ADDED
Added active module indication by name.
ADDED
Added additional crawlers to the list.
ADDED
Added custom configuration file option.
ADDED
Added human-readable string when unable to open log.
ADDED
Added missing include when compiling on OSX 10.6.
ADDED
Added optional mouse support to the main dashboard.
ADDED
Added the ability to select active module by number (keys).
ADDED
Added the rest of HTTP methods according to RFC2616.
CHANGED
Changed referring site sscanf format to process multiple URLs.
CHANGED
Changed the default color scheme to monochrome.
FIXED
Fixed issue where %T was not processing floating-point numbers.
FIXED
Fixed percentage issue for browsers and os modules.
FIXED
Fixed SIGSEGV when reading from stdin to stdout.
IMPROVED
Improved performance when expanding a module.
REDUCED
Reduced memory consumption by decreasing number of dns threads.
REMOVED
Removed ^UP/^DOWN due to a key mapping conflict.
# Release 0.6 Monday, July 15, 2013
ADDED
Added a bunch of minor fixes and changes.
ADDED
Added and updated list of browsers and operating systems.
ADDED
Added a predefined log format/date for the Amazon CloudFront (Download Distribution).
ADDED
Added parsing/processing indicators.
ADDED
Added the ability to independently sort each module.
ADDED
Added the ability to search across the whole dashboard with the option to use regular expressions.
CONFIG
Config window now accepts [ENTER] to continue or F10.
FIXED
Fixed issue where Opera +15 was identified as Chrome.
IMPLEMENTED
Implemented the ability to parse the time taken to serve the request, in microseconds and seconds.
IMPROVED
Improved memory usage and better performance in general.
MOVED
Moved away from the original pop-up UI to a new expandable dashboard allowing data to be processed in real-time.
SANITIZED
Sanitized HTML output with html entities for special chars.
UPDATED
Updated the hosts module so it shows the reverse DNS as a sub node.
# Release 0.5 Monday, June 04, 2012
ADDED
Added ability to output a full stats report to a file.
ADDED
Added a key shortcut to scroll top/bottom.
ADDED
Added a new include sys/socket.h - BSD
ADDED
Added support for IPv6
ADDED
Added the ability to parse a custom format string.
FIXED
Fixed google cache key-phrases.
FIXED
Fixed issue on empty Google query strings.
FIXED
Fixed issue on Opera agents where version was not recognized correctly.
FIXED
Fixed other minor fixes and changes.
# Release 0.4.2 Monday, January 03, 2011
ADDED
Added UTF-8 support. Now it should handle properly wide-character/UTF-8. Run ./configure --enable-utf8
FIXED
Fixed a minor bug when adding monthly totals on visitors subwin.
REMOVED
Removed -lrt since GoAccess does not link to librt. (OS X doesn't include librt)
# Release 0.4.1 Monday, December 13, 2010
ADDED
Added more flexibility when resizing the terminal. Should work fine with the standard 80x24.
ADDED
Added the ability to pass a flag to ./configure so GeoIP can be enabled if needed.
IMPLEMENTED
Implemented a pipeline from stdin, so the input doesn't have to be only a file.
# Release 0.4 Tuesday, November 30, 2010
ADDED
Added graphs to the unique_visitors subwin.
IMPLEMENTED
Implemented bandwidth per day, and host.
IMPLEMENTED
Implemented list of agents for specific hosts.
REWROTE
Rewrote hash tables iterative code to avoid the use of GHashTableIter, this way it works with all GLib > 2.0.0.
VARIOUS
Various bug fixes and code cleanups (mainly in the subwin modules).
# Release 0.3.3 Monday, September 27, 2010
CHANGED
Changed tarball's filename.
FIXED
Fixed a request size parsing issue. Due to malformed syntax on the HTTP protocol, bandwidth was reset to 0. Ex. "HEAD /" 400 20392
FIXED
Fixed a segfault when goaccess was executed without any options but with an additional unknown argument.
# Release 0.3.2 Thursday, September 09, 2010
FIXED
Fixed an agent parsing issue. As a result, operating systems were not properly counted.
# Release 0.3.1 Friday, September 03, 2010
ADDED
Added a color scheme implementation
# Release 0.3 Sunday, August 29, 2010
ADDED
Added a counter for total requests since initial parse was implemented
ADDED
Added a more detailed and comprehensive browser and os report
ADDED
Added bandwidth details for requested files
ADDED
Added percentage details on modules 2, 3, 4, 5, 10, 11
FIXED
Fixed a potential segmentation fault when resizing main window
FIXED
Fixed a segmentation fault on pop-up window search if haystack was null
FIXED
Fixed invalid entries when parsing status codes
IMPLEMENTED
Implemented a real support for LFS - Handles files larger than 2 GiB on 32-bit systems
IMPLEMENTED
Implemented support for "vhost_combined" log format
CHANGED
Changed position of data/graphs depending on # of hits
# Release 0.2 Sunday, July 25, 2010
ADDED
Added a keyphrases report coming from Google search engine. This includes, raw, cache, and translation queries.
FIXED
Fixed a memory leak when invalid entries were parsed
FIXED
Fixed a potential buffer overflow.
IMPLEMENTED
Implemented real-time statistics (RTS). Data will be appended as the log file grows. Equivalent to "tail -f" on Unix systems
IMPLEMENTED
Implemented screen resize functionality
SIMPLIFIED
Simplified creation of the "unique visitors" hash-key.
SIMPLIFIED
Simplified the "process_unique_data" function
VARIOUS
Various small speed increases & code cleanup
# Release 0.1.2 Monday, July 12, 2010
FIXED
Fixed a segmentation fault when parsing logs with unusual request type. Ex. "GET HTTP/1.1 HTTP/1.1"
# Release 0.1.1 Saturday, July 10, 2010
ADDED
Added an enhanced error handling
ADDED
Added an extra macro on configure.ac to check against GHashTableIter. ./configure might not check for glib 2.16 that introduced "GHashTableIter".
CLEANED
Cleaned up code a little bit
FIXED
Fixed a segmentation fault when displaying the help text on x86_64.
FIXED
Fixed assignments in conditions. In case the assignment is actually intended put extra parenthesis around it. This will shut GCC (and others) up.
FIXED
Fixed casts associated with "g_hash_table_iter_next".
FIXED
Fixed comparison between signed and unsigned integer types.
FIXED
Fixed function declarations.
FIXED
Fixed two format strings. (If the error was ever triggered, it'd most likely lead to a segfault)
# Release 0.1 Tuesday, July 06, 2010
INITIAL
Initial release 0.1