PostgreSQL Database Service#

PostgreSQL Database(DB) Service is a widely used open-source relational database management system. It emphasizes reliability, feature robustness, and performance.

Use the Observe PostgreSQL app to get out-of-the-box visibility into the overall health of your PostgreSQL DB instances. This app helps you answer questions such as the following:

  • What is the throughput volume? Does it seem normal?

  • Is the database query performance healthy? Are there high latency or error rates?

  • Are the database instances reaching their connection limits? Are they returning connection errors?

The PostgreSQL app installs the following datasets by default:

  • Instance

  • Metrics

  • Log Events

  • Error Logs

  • Query Logs

  • PG Stat Activity Events

  • Telegraf Events

Viewing PostgreSQL DB performance in Observe#

After installing the app, view the health of your PostgreSQL DB instances by going to the Instance dataset in Observe. This dataset models the instances of PostgreSQL DB running in your environment, whether you manage the instance on a host or through a managed service on a cloud provider. This dataset offers GraphLinks to the following resources:

  • Metrics

  • Log Events

  • Query Logs

  • Error Logs

  • PG Stat Activity Events

From this resource, you can filter to any number of PostgreSQL DB instances and use the default dashboards to get insight into health and status.

PostgreSQL/Monitoring#

The PostgreSQL/Monitoring dashboard offers a quick glance at key health metrics for your PostgreSQL DB instances, including summaries of errors, throughput, connection availability, and server resource consumption. From these graphs, you can use GraphLink to see related data in the Host app or jump to other PostgreSQL DB dashboards.

PostgreSQL Monitoring. Summarizes Errors, throughput, connection availability, and server resource usage.

Figure 1 - PostgreSQL/Monitoring dashboard

PostgreSQL/Performance#

The PostgreSQL/Performance dashboard summarizes key aspects of your PostgreSQL DB instance performance, including data on cache hits, query performance, and checkpoint activity. As you identify important trends and anomalies in this dashboard, you can then pivot to other more specific dashboards and dive into deeper investigations.

PostgreSQL Performance. Summarizes cache-hit rates, query performance, and checkpoint activity.

Figure 2 - PostgreSQL/Throughput dashboard

PostgreSQL/Throughput#

The PostgreSQL/Throughput dashboard gives you a deeper view of the read, write, and deadlock activity on your instances.

PostgreSQL Throughput. Visualizations include rows read, rows written, and deadlock count by instance.

Figure 3 - PostgreSQL/Throughput dashboard

PostgreSQL/Query Performance#

With the PostgreSQL/Query Performance dashboard you can explore the error rates, request rates, and latency of queries on your database instances. You can even inspect which queries are associated with extra latency.

PostgreSQL Query Performance. Visualizations include query and error rates, slower query counts, and latency.

Figure 4 - PostgreSQL/Query Performance dashboard

PostgreSQL/Checkpoints#

The PostgreSQL/Checkpoints dashboard details the counts of checkpoints scheduled versus unscheduled as well as the count of buffers written by checkpoints versus backends and background writers.

PostgreSQL Checkpoints. Visualizations include checkpoints scheduled vs. unscheduled, buffers written by checkpoints vs. backends and background writers.

Figure 5 - PostgreSQL/Checkpoints dashboard

PostgreSQL/Configurations & pg_stat_activity#

By clicking through a specific resource instance, you can also review its pg_settings in the PostgreSQL/Configurations & pg_stat_activity dashboard without logging into the server. There you can also inspect the live running queries, their durations, and their PIDs, which is especially useful if you need to kill or troubleshoot runaway queries.

PostgreSQL Configurations. View an instance's key pg_settings and pg_stat_activity without having to leave Observe.

Figure 6 - PostgreSQL/Configurations dashboard

Setup#

The PostgreSQL app ingests data using Fluentbit and Telegraf to collect PostgreSQL DB logs and metrics. To install and configure data collection, see the PostgreSQL DB Installation Guide.