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