Skip to content

Releases: cybertec-postgresql/pgwatch

v5.1.0

17 Mar 11:31
5719276

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v5.0.0...v5.1.0

What to do next?

v5.0.0

25 Feb 15:07
462eb82

Choose a tag to compare

pgwatch v5 introduces a major update to the PostgreSQL monitoring tool, focusing on enhanced stability, new features, and modernization. Key highlights include:

Major Changes

Schema migration support for PostgreSQL sinks, module version bump to v5, and migration of the web UI from react-scripts to Vite for improved performance and build efficiency.

New Features

Added metrics like stat_statements_jit, new Grafana panels (e.g., "Tables with the oldest non-frozen xid" and "Total index size"), support for reverse proxies on different paths, and functions like admin.maintain_unique_sources() for PostgreSQL sinks. Also includes graceful fallback for local log parsing and a new testutil package.

Improvements

Enhanced dashboards (e.g., Index Overview, Health Check), deprecation of old Stats Statements dashboards, refactoring of recommendation metrics, and better handling of configurations and logs. Minimum retention interval set to 1 hour.

Bug Fixes

Resolved issues with panel queries, data races in Prometheus sink, source config updates, logging, and more. Fixed circular dependencies in config upgrades and improved partition creation logic.

For full details, see the full changelog below.

What's Changed

New Contributors

Full Changelog: v4.1.0...v5.0.0

v4.1.0

26 Nov 13:53
2214bad

Choose a tag to compare

Warning

pgwatch v4.1 introduced a breaking change to --retention parameter. It must be a valid Postgres interval now instead of integer value used before. So if you used, for example, --retention=90 to keep measurements for 90 days, now you must use --retention="90 days" value!

What's Changed

New Contributors

Full Changelog: v4.0.0...v4.1.0

What to do next?

v4.0.0

24 Sep 13:42
c3590c2

Choose a tag to compare

What's New

This major release introduces several significant updates, new features, bug fixes, and enhancements

Important Changes

PostgreSQL 18 Metrics

  • total_XXX_time columns are added to table_stats metric;
  • read_bytes, write_bytes, and extend_bytes are added to stat_io metric;
  • use pg_stat_io for wal_stats metric;
  • use pg_ls_archive_statusdir() in archiver_pending_count metric;
  • num_done and slru_written columns are added to checkpointer metric;
  • parallel_workers_to_launch and parallel_workers_launched columns are added to db_stats metric.

Grafana Dashboards

  • New Grafana v12 dashboards have been added for both PostgreSQL and Prometheus sinks;
  • Grafana v10 support is discontinued;
  • New "Global Database Overview" dashboard with 26 panels, including new panels for replication, connections, and index usage (inspired by postgres.ai);
  • New "Database Overview" now has 21 panels with time lag support and improved visualizations;
  • New "Query Performance Analysis" dashboard with enhanced table with 17 metrics and 8 visualization panels (inspired by postgres.ai);
  • New "Tables Overview" dashboard providing insights into table sizes, bloat, and index usage with treemap visualizations panels.

Metrics

  • Realtime metrics have been deprecated and removed from the system.
  • Metrics can now be loaded from a specified folder, allowing for better organization and management of metric definitions.

Sinks

  • gRPC Sink Enhancements: Basic authentication support has been added to the gRPC sink, along with improved documentation for its usage.

Development and Contribution

  • The development experience with Docker Compose has been enhanced, making it easier to set up and manage the environment.
  • A new repository, pgwatch-contrib, has been created to host additional contributions and extensions for pgwatch from the community. The rpc subdirectory contains sample gRPC sinks implementations.

Changelog

New Contributors

Full Changelog: v3.7.0...v4.0.0

v3.7.0

24 Jul 12:47

Choose a tag to compare

What's Changed

  • [-] monitor all sources if --group cmdopt is omitted, fixes #843 (#847)
  • [*] improve stat-statements Grafana v11 Postgres dashboards by @f9n in #846

Full Changelog: v3.6.0...v3.7.0

What to do next?

v3.6.0

16 Jul 09:05
9ced8ec

Choose a tag to compare

What's Changed

  • [+] add "default" group processing by @pashagolub in #798
  • [+] add measurements written log message to RPC sink by @0xgouda in #829
  • [+] add TLS encryption to RPC channel by @0xgouda in #796
  • [+] bump go.etcd.io/etcd/v3 from 3.6.0 to 3.6.2 by @dependabot[bot] in #789 #837
  • [+] bump pashagolub/pgxmock/v4 from 4.7.0 to 4.8.0 by @dependabot[bot] in #806
  • [+] bump shirou/gopsutil/v4 from 4.25.5 to 4.25.6 by @dependabot[bot] in #827
  • [+] bump testcontainers/testcontainers-go from 0.37.0 to 0.38.0 by @dependabot[bot] in #839
  • [+] optimize the size of MeasurementEnvelope by @pashagolub in #793
  • [*] exclude MetricDef from MeasurementEnvelope by @pashagolub in #787
  • [*] improve --batching-delay parameter description, closes #821 by @pashagolub in #828
  • [-] fix --group command-line option, closes #792 by @pashagolub in #794
  • [-] fix instance_up metric, closes #759 by @pashagolub in #791
  • [-] fix master only postgres source shutdown due to catched InRecovery state logic by @0xgouda in #813
  • [-] fix Reap() method to update Recovery cache after processing the previous value by @0xgouda in #815
  • [-] fix Reap() to not require Source.MinDbSizeMb to be >= 8 by @0xgouda in #818
  • [-] fix Source.Equal() presets comparison, closes #830 by @0xgouda in #831
  • [-] fix typo in reapMetricMeasurements() log message by @0xgouda in #807
  • [-] fix JSONB null casting errors in postgres/v11 dashboards by @f9n in #838
  • [-] fix JSONB null casting errors in "Top Tables" and "Health-check" dashboards by @kmoppel in #833
  • [-] improve Prometheus scrapping, fixes #749 by @pashagolub in #790
  • [-] remove unnecessary check from FetchMetric() by @0xgouda in #808

New Contributors

  • @f9n made their first contribution in #838

Full Changelog: v3.5.0...v3.6.0

What to do next?

v3.5.0

05 Jun 14:48
732f097

Choose a tag to compare

What's Changed

  • [+] add pprof build profile for debugging by @pashagolub in #779
  • [+] bump shirou/gopsutil/v4 from 4.25.4 to 4.25.5 by @dependabot in #774
  • [+] decrease memory allocations for metrics.MeasurementEnvelope by @pashagolub in #768
  • [+] define sync metric operations types as constants by @0xgouda in #781 #782
  • [+] move sources sync to the reaper by @pashagolub in #769
  • [+] rewrite ParseLogs() with timers and eliminate extra checks by @pashagolub in #770
  • [+] switch to json-iterator/go from encoding/json by @pashagolub in #776
  • [*] change json sink to use one global encoder by @0xgouda in #772
  • [*] remove metrics definitions from Postgres sink by @pashagolub in #773
  • [*] use pgx.Rows directly in DetectConfigurationChanges() by @pashagolub in #775
  • [-] add additional checks to LogParse() by @pashagolub in #784
  • [-] remove misleading VOLUME /var/lib/postgresql declaration by @pashagolub in #780

New Contributors

Full Changelog: v3.4.0...v3.5.0

What to do next?

v3.4.0

23 May 19:58
861c882

Choose a tag to compare

What's Changed

  • [+] bump jackc/pgx/v5 from 5.7.4 to 5.7.5 by @dependabot in #763
  • [+] bump go.etcd.io/etcd/v3 from 3.5.21 to 3.6.0 by @dependabot in #762
  • [*] use consistent password in install docs by @df7cb in #765
  • [-] fix dbSourcesReaderWriter.updateDatabase() to include is_enabled by @pashagolub in #760
  • [-] fix QueryMeasurements nil pointer dereference, fixes #766 by @pashagolub in #767

New Contributors

Full Changelog: v3.3.0...v3.4.0

What to do next?

v3.3.0

12 May 11:51
29ef983

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v3.2.0...v3.3.0

What to do next?

v3.2.0

25 Mar 11:22
f0949f9

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v3.1.0...v3.2.0

What to do next?