pgBadger Changelog

New in version 6.1

September 26th, 2014
  • This release fix some issues and adds some new features. It adds a new option -B or --bar-graph to use bar instead of line in graphs. It will also keep tick formatting when zooming.
  • The release also add a new program: pgbadger_tools to demonstrate how to works with pgBadger binary files to build your own new feature. The first tools 'explain-slowest' allow printing of top slowest queries as EXPLAIN statements. There's also additionnal options to execute automatically the statements with EXPLAIN ANALYZE and get the execution plan. See help of the program for more information or the README file in the tools directory.
  • Some modifications will change certain behavior:
  • The -T | --title text value will now be displayed instead of the pgBadger label right after the logo. report. It was previously displayed on mouse over the pgBadger label.
  • Changes:
  • Change -T | --title position on pgBadger report. Title now override the pgBadger label. Thanks to Julien Rouhauld for the patch.
  • Add --file-per-query and --format-query option to write each slowest query in separate file named qryXXX.sql and perform minimal formating of the queries. Thanks to Rodolphe Quiedeville for the patch.
  • Remove debug query from explain-slowest tool.
  • Fix surge in sessions number report when an exclusion or inclusion option (dbname, user, appname, etc.) is used. Thanks to suyah for the report.
  • Fix fatal error when remote log file is 0 size. Thanks to Julien Rouhaud for the report.
  • Allow pgbadger_tools --explain-slowest to automatically execute the EXPLAIN statements an report the plan. See pgbadger_tools --help for more explanation.
  • Add --analyze option to replace EXPLAIN statements by EXPLAIN (ANALYZE, VERBOSE, BUFFERS).
  • Move pgbadger_tools program and into the tools/ subdirectory with removing the extension. Add more comments and explanations.
  • Fix case where die with interrupt signal is received when using -e option. Thanks to Lloyd Albin for the report.
  • Add a new program pgbadger_tools to demonstrate how to deal with pgBadger binary files to build your own new feature. The first one 'explain-slowest' allow printing of top slowest queries as EXPLAIN statements.
  • Keep tick formatting when zooming. Thanks to Julien Rouhaud for the patch.
  • Fix automatic detection of rsyslogd logs. Thanks to David Day for the report.
  • Fix issue in calculating min/max/avg in "General Activity" report. It was build on the sum of queries duration per minutes instead of each duration. Thanks to Jayadevan M for the report.
  • The same issue remains with percentile that are build using the sum of duration per minutes and doesn't represent the real queries duration.
  • This commit also include a modification in convert_time() method to reports milliseconds.
  • Add -B or --bar-graph command line option to use bar instead of line in graph. Thanks to Bart Dopheide for the suggestion.
  • Fix Checkpoint Wal files usage graph title.

New in version 5.0 (February 7th, 2014)

  • This new major release adds some new features like incremental mode and a SQL queries times histogram.
  • There is also an hourly graphic representation of the count and average duration of top normalized queries, and the same for errors or events (you will be able to see graphically at which hours they are occurring the most often).

New in version 4.1 (November 9th, 2013)

  • This version fixes two major bugs and some other minor issues.
  • There's also a new command line option --exclude-appname that allow exclusion from the report of queries generated by a specific program, like pg_dump.
  • Documentation has been updated with a new chapter about building incremental reports.

New in version 4.0 (October 31st, 2013)

  • This release comes with a bunch of new features including a complete overhaul for the HTML reports, some new statistics, compatibility with PostgreSQL 9.3, and Time Period Exclusion.

New in version 3.5 (July 12th, 2013)

  • The last release of the 3.x branch, this is a bugfix release which also adds some pretty printing of the Y axis number on graphs and a new graph which groups queries duration series (which was shown as second Y axis on graphs), as well as a new graph with the number of temporary files (which was also used as second Y axis).

New in version 3.4 (June 19th, 2013)

  • This version added many graphical improvements and improved rendering of logs over a few hours.
  • Bugs were fixed, especially in reports of queries that generate the most temporary files.

New in version 3.3 (May 2nd, 2013)

  • This version adds four more useful reports about queries that generate locks and temporary files.
  • Another new report about restart points and several bugsfixes or cosmetic changes.
  • Support for parallel processing under Windows has been removed.

New in version 3.2 (April 9th, 2013)

  • This is mainly a bugfix release, which also adds escaping of HTML code inside queries and adds Min/Max reports with Average duration in all queries reports.

New in version 3.1 (February 22nd, 2013)

  • This is a quick release to fix missing reports of most frequent errors and slowest normalized queries in the previous version published yesterday.

New in version 3.0 (February 21st, 2013)

  • Update documentation about log_duration, log_min_duration_statement and log_statement.
  • Rewrite dirty code around log timestamp comparison to find timestamp of the specified begin or ending date.
  • Remove distinction between logs with duration enabled from variables log_min_duration_statement and log_duration. Commands line options --enable-log_duration and --enable-log_min_duration have been removed.
  • Update documentation about parallel processing.
  • Remove usage of Storable::file_magic to autodetect binary format file, it is not include in core perl 5.8. Thanks to Marc Cousin for the report.
  • Force multiprocess per file when files are compressed. Thanks to Julien Rouhaud for the report.
  • Add progress bar for multiprocess by forking a dedicated process and using pipe. Also fix some bugs in using binary format that duplicate query/error samples per process.
  • chmod 755 pgbadger
  • Fix checkpoint reports when there is no checkpoint warnings.
  • Fix non report of hourly connections/checkpoint/autovacuum when not query is found in log file. Thanks to Guillaume Lelarge for the report.
  • Add -J|--job_per_file command line option to force pgbadger to use one process per file instead of using all to parse one file. Useful to have better performances with lot of small log file.
  • Fix parsing of orphan lines with stderr logs and log_line_prefix without session information into the prefix (%l).
  • Update documentation about -j | --jobs option.
  • Allow pgbadger to use several cores, aka multiprocessing. Add options -j | --jobs option to specify the number of core to use.
  • Add autovacuum and autoanalyze infos to binary format.
  • Fix case in SQL code highlighting where QQCODE temp keyword was not replaced. Thanks to Julien Ruhaud for the report.
  • Add pie graph to show repartition of number of autovacuum per table and number of tuples removed by autovacuum per table.
  • Add report of tuples/pages removed in report of Vacuums by table.
  • Fix major bug on syslog parser where years part of the date was wrongly extracted from current date with logs generated in 2012.
  • Fix issue with Perl 5.16 that do not allow "ss" inside look-behind assertions. Thanks to Cedric for the report.
  • New vacuum and analyze hourly reports and graphs. Thanks to Guillaume Lelarge for the patch.