# pgBadger 12.x Release Notes

> Complete upstream release notes for the pgBadger 12.x series

---

LLMS index: [llms.txt](/llms.txt)

---

These entries preserve the complete upstream change record for pgBadger 12.x, newest first.

> Source: [upstream `ChangeLog`](https://github.com/darold/pgbadger/blob/a1ad95a035a0c2d246fe632eb1c361d4bde0ddae/ChangeLog) at commit [`a1ad95a`](https://github.com/darold/pgbadger/commit/a1ad95a035a0c2d246fe632eb1c361d4bde0ddae).

## v12.4 · 2023-12-25 {#v12-4}

This is a maintenance release of pgBadger that fixes issues reported by
users since last release.

  - Fix pgbouncer report with version 1.21. Thanks to Ales Zeleny for the patch.
  - Prevent parallelism perl file to be higher than the number of files. Thanks
    to maliangzhu for the report.
  - Fix regression test broken since v12.3. Thanks to ieshin for the report.
  - Fix cases where LOG entries where counted as ERROR log level entries. Thanks
    to Matti Linnanvuori for the report.

## v12.3 · 2023-11-27 {#v12-3}

This is a maintenance release of pgBadger that fixes issues reported by
users since last release. It also adds some new features:

  * Add option --include-pid to only report events related to a session
    pid (%p). Can be used multiple time. Thanks to Henrietta Dombrovskaya
    for the feature request.
  * Add option --include-session to only report events related to the
    session id (%c). Can be used multiple time. Thanks to Henrietta Dombrovskaya
    for the feature request.
  * Add new option --dump-raw-csv to only parse the log and dump the information
    into CSV format. No further processing is done, no report is generated.
    Thanks to Henrietta Dombrovskaya for the feature request.

Here is the complete list of changes and acknowledgments:

  - Update pgFormatter to version 5.5
  - Fix end date of parsing with jsonlog format. Thanks to jw1u1 for the report.
  - Fix typo in "Sessions per application". Thanks to fairyfar for the patch.
  - Fix "INSERT/UPDATE/DELETE Traffic" chart bug. Thanks to fairyfar for the
    patch.
  - Fix parsing of orphan lines with bind queries. Thanks to youxq for the
    report.
  - Fix Analyze per table report with new PG versions. Thanks to Jean-Christophe
    Arnu for the patch.
  - Fix syslog entry parser when the syslog timestamp contains milliseconds.
    Thanks to Pavel Rabel for the report.

## v12.2 · 2023-08-20 {#v12-2}

This is a maintenance release of pgBadger that fixes issues reported by
users since last release. It also adds two new features:

  * Add support for max, avg, min autovacuum duration. Thanks to Francisco
    Reinolds for the patch.
  * Add support for pgbouncer's average waiting time. Thanks to Francisco
    Reinolds for the patch.

Here is the complete list of changes and acknowledgments:

  - Fix broken HTML output when application name contains <...>. Thanks to
    Fabio Geiss for the report.
  - Fix incorrect association of orphan lines when a filter on database was
    applied.  Thanks to jcasanov for the report.
  - Fix logplex prefix parsing.
  - Fix logplex orphan lines detection.
  - Fix `autovacuum`'s `system usage: CPU: ...` line parsing. Thanks to
    Francisco Reinolds for the patch.
  - Avoid prepending output directory if output is stdout.
  - Standardise Average Query Duration label. Thanks to Francisco Reinolds
    for the patch
  - Update documentation for new pgbadger options. Thanks to Francisco Reinolds
    for the patch.
  - Fix case where parsing was not aborted when no file handle can be opened.
    Thanks to vp for the report.
  - Fix help by adding %p/%t mandatory placeholder log information. Thanks to
    Christophe Courtois for the patch.
  - Fix --retention parameter. Thanks to Bertrand Bourgier for the patch.
  - Fix cleanup output directory removed by commit 0e5c7d5 when HTML output dir
    is set. Thanks to Bertrand Bourgier for the report.
  - Fix output extension when destination directory contain a character that
    need to be escaped in regexp. Thanks to Bertrand Bourgier for the patch.
  - Replace calls to POSIX::strftime("%s", ....) by a call to localtime for
    Windows port. Thanks to Bertrand Bourgier for the patch.
  - Fix html output dir cleanup. Thanks to Bertrand Bourgier for the patch.
  - Use https for explain URL by default. Thanks to Philipp Trulson for the
    patch.

## v12.1 · 2023-03-20 {#v12-1}

This is a maintenance release of pgBadger that fixes issues reported by users
since past six months.

Here is the complete list of changes and acknowledgments:

  - Fix parsing of multiline parameters. Thanks to Bekir Niyaz for the report.
  - Fix failure to normalize query with ::tsrange. Thanks to Philippe Griboval
    for the report.
  - Add logical decoding consistent point and start for slot log entries to
    the events report.
  - Handle other ns + timezone format in timestamp. Thanks to Ronan Dunklau
    for the report.
  - Fix detection of %m when notation with T is used. Thanks to Ronan Dunklau
    for the report.
  - Add parsing of CloudNativePG generated logs. Thanks to codrut panea for
    the patch.
  - Fix unused option --outdir in report generation. Thanks to Frederic Guiet
    for the report.
  - Update README with last documentation changes. Thanks to Manisankar for
    the report.
  - Fix a typo in pgbadger examples. Thanks to Shinichi Hashiba for the patch.

## v12.0 · 2022-09-13 {#v12-0}

This major release of pgBadger fixes some issues reported by users since
past five months. As usual there is also new features and improvements:

  * Remove support to Tsung output.
  * Improve pgbadger performances when there are hundred of bind parameters
    to replace.
  * Remove option -n | --nohighlight which is no more used since upgrade to
    pgFormatter 4.
  * Use POST method to send auto_explain plan to explain.depesz.com to avoid
    GET length parameter limit.
  * Apply --exclude-query and --include-query to bind/parse traces.
  * Add link to pgBadger report examples to documentation.

Here is the complete list of changes and acknowledgments:

  - Fix monthly reports that was failing on "log file ... must exists". Thanks
    to Jaume Sabater for the report.
  - Fix pgbouncer start parsing debug message when input is stdin. Thanks to
    aleszeleny for the report.
  - Remove support to Tsung output.
  - Drastically improve pgbadger performances for bind parameters
    replacement that could make pgbadger run infinitely when there was
    hundred of parameters. Thanks to Monty Mobile for the report.
  - Fix documentation about pgBadger return codes and also some wrong return
    code at some places. Thanks to Jaume Sabater for the report.
  - Fix several typo. Thanks to David Gilman for the patch.
  - Remove option -n | --nohighlight which is no more used since upgrade to
    pgFormatter 4. Thanks to Elena Indrupskaya for the report.
  - Lot of pgbadger documentation fixes. Thanks to Elena Indrupskay from
    Postgres Pro for the patch.
  - Allow half hour in --log-timezone and --timezone, value can be an integer,
    ex: 2 or a float, ex: 2.5. Thanks to Mujjamil-K for the feature request.
  - Allow use of regexp for --exclude-app and --exclude-client. Thanks to
    rdnkrkmz for the feature request.
  - Allow use of --explain-url with previous commit and restore the limitation
    to explain text format.
  - Use POST method to send auto_explain plan to explain.depesz.com to avoid
    GET length parameter limit. Thanks to hvisage for the report.
  - Apply --exclude-query and --include-query to bind/parse traces. Thanks to
    Alec Lazarescu for the report.
  - Fix parsing of autovacuum stats from RDS logs. Thanks to David Gilman for
    the report.
  - Fix passing of log format when parsing remote log. Thanks to spookypeanut
    the report.
  - Add link to pgBadger report examples to documentation.
  - Fix Session per user reports. Thanks to vitalca for the report.
  - Fix jsonlog parsing from PG15 ouput
  - Fix text-based error/events reporting. Thanks to Michael Banck for the patch
  - Fix regexp typo in normalize_error(). Thanks to Michael Banck for the patch.
