Version 9.1

@darold darold released this Jan 24, 2017 · 10 commits to master since this release

2017-01-24 - v9.1

This release of pgBadger is a maintenance release that adds some new
features.

  • Add report of error class distribution when SQLState is available in the log_line_prefix (see %e placeholder).
  • Update SQL Beautifier to pgFormatter v1.6 code.
  • Improve error message normalization.
  • Add --normalized-only option to generate a text file containing all normalized queries found in a log with count.
  • Allow %c (session id) to replace %p (pid) as unique session id.
  • Add waiting for lock messages to event reports.
  • Add --start-monday option to start calendar weeks in Monday instead of default to Sunday.

There's also some bugs fixes and features enhancements.

  • Add report of error class distribution when SQLState is available in the log line prefix. Thanks to jacks33 for the feature request.
  • Fix incremental global index on resize. Thanks to clomdd for the report.
  • Fix command tag log_line_prefix placeholder %i to allow space character.
  • Fix --exclude-line options and removing of obsolete directory when retention is enabled and --noreport is used.
  • Fix typo in "vacuum activity table". Thanks to Nicolas Gollet for the patch.
  • Fix autovacuum report. Thanks to Nicolas Gollet for the patch.
  • Fix author of pgbadger's logo - Damien Cazeils and English in comments. Thanks to Thibaut Madelaine for the patch.
  • Add information about pgbouncer log format in the -f option. Thanks to clomdd for the report.
  • Add --normalized-only information in documentation.
  • Fix broken report of date-time introduced in previous patch.
  • Fix duration/query association when log_duration=on and log_statement=all. Thanks to Eric Jensen for the report.
  • Fix normalization of messages about advisory lock. Thanks to Thibaut Madelaine for the report.
  • Fix report of auto_explain output. Thanks to fch77700 for the report.
  • Fix unwanted log format auto detection with log entry from stdin. Thanks to Jesus Adolfo Parra for the report.
  • Add left open parentheses to the "stop" chars of regex to look for db client in the prefix to handle the PostgreSQL client string format that includes source port. Thanks to Jon Nelson for the patch.
  • Fix some spelling errors. Thanks to Jon Nelson for the patch.
  • Allow %c (session id) to replace %p (pid) as unique session id. Thanks to Jerryliuk for the report.
  • Allow pgbadger to parse default log_line_prefix that will be probably used in 10.0: '%m [%p] '
  • Fix missing first line with interpreter call.
  • Fix missing Avg values in CSV report. Thanks to Yosuke Tomita for the report.
  • Fix error message in autodetect_format() method.
  • Add --start-monday option to start calendar weeks in Monday instead of default to Sunday. Thanks to Joosep Mae for the feature request.
  • Fix --histo-average option. Thanks to Yves Martin for the report.
  • Remove plural form of --ssh-option in documentation. Thanks to mark-a-s for the report.
  • Fix --exclude-time filter and rewrite code to skip unwanted line as well code to update the progress bar. Thanks to Michael Chesterton for the report.
  • Fix support to %r placeholder in prefix instead of %h.

Downloads

Version 9.0

@darold darold released this Sep 2, 2016 · 51 commits to master since this release

2016-09-02 - v9.0

This major release of pgBadger is a port to bootstrap 3 and a version
upgrade of all resources files (CSS and Javascript). There's also some
bugs fixes and features enhancements.

Backward compatibility with old incremental report might be preserved.

  - Sources and licences of resources files are now on a dedicated
    subdirectory. A script to update their minified version embedded
    in pgbager script has been added. Thanks to Christoph Berg for
    the help and feature request.

  - Try to detect user/database/host from connection strings if
    log_connection is enabled and log_line_prefix doesn't include
    them.

    Extend the regex to autodetect database name, user name, client
    ip address and application name. The regex now are the following:

        db => qr/(?:db|database)=([^,]*)/;
        user => qr/(?:user|usr)=([^,]*)/;
        client => qr/(?:client|remote|ip|host)=([^,]*)/;
        appname => qr/(?:app|application)=([^,]*)/;

  - Add backward compatibility with older version of pgbadger in
    incremental mode by creating a subdirectory for new CSS and
    Javascript files. This subdirectory is named with the major
    version number of pgbadger.

  - Increase the size of the pgbadger logo that appears too small
    with the new font size.

  - Normalize detailed information in all reports.

  - Fix duplicate copy icon in locks report.

  - Fix missing chart on histogram of session time. Thanks to
    Guillaume Lelarge for the report.

  - Add LICENSE file noting the licenses used by the resource
    files. Thanks to Christoph Berg for the patch.

  - Add patch to jqplot library to fix an infinite loop when trying
    to download some charts. Thanks to Julien Tachoires for the help
    to solve this issue.

  - Script tools/updt_embedded_rsc.pl will apply the patch to resource
    file resources/jquery.jqplot.js and doesn't complain if it has
    already been applied.

  - Remove single last comma at end of pie chart dataset. Thanks to
    Julien Tachoires for the report.

  - Change display of normalized error

  - Remove unused or auto-generated files

  - Update all resources files (js+css) and create a directory to
    include source of javascript libraries used in pgbadger. There is
    also a new script tools/updt_embedded_rsc.pl the can be used to
    generate the minified version of those files and embedded them
    into pgbadger.  This script will also embedded the FontAwesome.otf
    open truetype font into the fontawesome.css file.

Downloads

Version 8.3

@darold darold released this Aug 27, 2016 · 69 commits to master since this release

2016-08-27 - v8.3

This is a maintenance release that fix some minor bugs. This release
also adds replication command messages statistics to the Events
reports.

  • Fix auto-detection of stderr format with timestamp as epoch (%n).
  • Fix histogram over multiples days to be cumulative per hour, not
    an average of the number of event per day.
  • Fix parsing of remote file that was failing when the file does
    not exists locally. Thanks to clomdd for the report.
  • Detect timezones like GMT+3 on CSV logs. Thanks to jacksonfoz
    for the patch.
  • Add replication command messages statistics to the Events
    reports. Thanks to Michael Paquier for the feature request.

This is the last minor version of the 8.x series, next major version
will include an upgrade of boostrap and jquery libraries which need
some major rewrite.

Downloads

Version 8.2

@darold darold released this Aug 11, 2016 · 76 commits to master since this release

2016-08-11 version 8.2

This is a maintenance release that fix some minor bug. There is also
some performances improvement up to 20% on huge files and some new
interesting features:

  • Multiprocessing can be used with pgbouncer log files.
  • pgBouncer and PostgreSQL log files can be used together in
    incremental mode.
  • With default or same prefix, stderr and syslog file can be
    parsed together, csvlog format can always be used.
  • Use a modal dialog window to download graphs as png images.
  • Add pl/pgSQL function information to queries when available.

See ChangeLog for the complete list of changes.

Downloads

Version 8.1

@darold darold released this Apr 21, 2016 · 105 commits to master since this release

2016-04-21 version 8.1

This is a maintenance release that fix a major issue introduced with
support to pgbouncer that prevent parsing of compressed PostgreSQL
log files and adds some improvements.

Here are the complete list of changes:

  • Fix one case where pid file remain after dying.
  • Add requirement of log_error_verbosity = default to documentation.
  • Report message "LOG: using stale statistics instead of current
    ones because stats collector is not responding" in events view.
  • Remove obsolete days when we are in binary mode with --noreport
  • Fix wrong report of statements responsible of temporary files.
    Thanks to Luan Nicolini Marcondes for the report. This patch also
    exclude line with log level LOCATION to be parsed.
  • Fix limit on number of sample at report generation and remove
    pending LAST_PARSED.tmp file.
  • Update load_stat() function and global variables to support
    pgbouncer statistics. Update version to 2.0.
  • Handle more kind or query types. Thanks to julien Rouhaud for
    the patch.
  • Fix pgbouncer log parser to handle message: FATAL: the database
    system is shutting down
  • Fix whitespace placed in between the E and the quote character.
    Thanks to clijunky for the report.
  • Fix a major issue introduced with support to pgbouncer that
    prevent parsing of compressed PostgreSQL log files. Thanks to
    Levente Birta for the report.

Downloads

Version 8.0

@darold darold released this Feb 22, 2016 · 121 commits to master since this release

This is a major release that adds support to pgbouncer log files. New pgbouncer reports are:

  • Request Throughput
  • Bytes I/O Throughput
  • Queries Average duration
  • Simultaneous sessions
  • Histogram of sessions times
  • Sessions per database
  • Sessions per user
  • Sessions per host
  • Established connections
  • Connections per database
  • Connections per user
  • Connections per host
  • Most used reserved pools
  • Most Frequent Errors/Events

pgbouncer log files can be parsed together with PostgreSQL logs.

It also adds a two new command line options:

  • --pgbouncer-only to only show pgbouncer related reports.
  • --rebuild to be able to rebuild all html reports in incremental output directory where binary data files are still available.

This release fixes a major bug introduced with journalctl code that was prevented the use of multiprocess feature.

Downloads

Version 7.3

@darold darold released this Jan 18, 2016 · 135 commits to master since this release

This is a maintenance release to fix a major bug that was breaking the incremental mode in pgBadger. It also adds some more reports and features.

  • Add --timezone=+/-HH to control the timezone used in charts. The
    javascript library runs at client side so the timezone used is
    the browser timezone so the displayed time in the charts can be
    different from the time in the log file.
  • Add /tmp/pgbadger.pid file to prevent cron jobs overlaping on
    same log files.
  • Add command line option --pid-dir to be able to run two pgbadger
    at the same time by setting an alternate path to the pid file.
  • Report information about "LOG: skipping analyze of ..." into
    events reports.
  • Report message "LOG: sending cancel to blocking autovacuum" into
    events reports. Useful to look for queries generating autovacuum
    kill on account of a lock issue.

Downloads

Version 7.2

@darold darold released this Jan 6, 2016 · 153 commits to master since this release

This new release fixes some issues especially in temporary files reports and adds some features.

  • Allow pgBadger to parse natively the journalctl command output
  • Add new keywords from PG 9.5 for code formating
  • Add support to %n log_line_prefix option for Unix epoch (PG 9.6)

There's also some new command line option:

  • Adds --journalctl_cmd option to enable this functionality and set the command. Typically to parse output of PG 9.4 log:

    --journalctl_cmd "journalctl -u postgresql-9.4"
    

to parse output of PG 9.4 log through the journalctl command.

See ChangeLog for the full list of changes/fixes.

Downloads