PostgreSQL
PostgreSQL is a powerful open-source relational database known for its reliability and feature set.
Auto-Detection
Section titled “Auto-Detection”Glouton detects PostgreSQL by its process and listening port (default: 5432).
To enable metrics gathering, credentials are required. Glouton finds them automatically if PostgreSQL is running in a Docker container with username and password set through the environment variables POSTGRES_USER (defaults to postgres) and POSTGRES_PASSWORD.
By default, only aggregate metrics are gathered. To monitor specific databases, add them to the detailed_items setting.
When using Docker, you can set the databases to monitor and credentials via labels:
docker run --label glouton.detailed_items="bleemeo,postgres" --label glouton.username="USERNAME" --label glouton.password="PASSWORD" [...]If auto-detected parameters are incorrect, or you want to monitor specific databases, override them manually:
sudo tee /etc/glouton/conf.d/99-postgresql.conf > /dev/null << 'EOF'service: # For a PostgreSQL running outside a container - type: "postgresql" username: "USERNAME" password: "PASSWORD" address: "127.0.0.1" port: 5432
# For an additional PostgreSQL running outside a container - type: "postgresql" instance: "NAME_ASSOCIATED_WITH_YOUR_ADDITIONAL_SERVICE" username: "USERNAME" password: "PASSWORD" address: "127.0.0.1" port: 5433
# For a PostgreSQL running in a Docker container - type: "postgresql" instance: "CONTAINER_NAME" username: "USERNAME" password: "PASSWORD" address: "172.17.0.2" port: 5432 # Monitor the databases called "bleemeo" and "postgres" detailed_items: - bleemeo - postgresEOFCreate or edit C:\ProgramData\glouton\conf.d\99-postgresql.conf:
service: # For a PostgreSQL running outside a container - type: "postgresql" username: "USERNAME" password: "PASSWORD" address: "127.0.0.1" port: 5432
# For an additional PostgreSQL running outside a container - type: "postgresql" instance: "NAME_ASSOCIATED_WITH_YOUR_ADDITIONAL_SERVICE" username: "USERNAME" password: "PASSWORD" address: "127.0.0.1" port: 5433
# For a PostgreSQL running in a Docker container - type: "postgresql" instance: "CONTAINER_NAME" username: "USERNAME" password: "PASSWORD" address: "172.17.0.2" port: 5432 detailed_items: - bleemeo - postgresGlouton automatically detects configuration changes.
Built-in Metrics
Section titled “Built-in Metrics”| Metric | Description |
|---|---|
service_status | Status of PostgreSQL |
postgresql_blk_read_utilization | PostgreSQL data file block read utilization |
postgresql_blk_read_utilization_sum | Sum of PostgreSQL data file block read utilization |
postgresql_blk_write_utilization | PostgreSQL data file block write utilization |
postgresql_blk_write_utilization_sum | Sum of PostgreSQL data file block write utilization |
postgresql_blks_hit_sum | Number of blocks read from PostgreSQL cache per second |
postgresql_blks_read_sum | Number of blocks read from disk per second |
postgresql_commit_sum | Number of commits per second |
postgresql_rollback_sum | Number of rollbacks per second |
postgresql_temp_bytes_sum | Temporary file write throughput in bytes per second |
postgresql_temp_files_sum | Number of temporary files created per second |
postgresql_tup_deleted_sum | Number of rows deleted per second |
postgresql_tup_fetched_sum | Number of rows fetched per second |
postgresql_tup_inserted_sum | Number of rows inserted per second |
postgresql_tup_returned_sum | Number of rows returned per second |
postgresql_tup_updated_sum | Number of rows updated per second |
Except for service_status, all metrics also exist without the _sum suffix when detailed_items is configured. For example, postgresql_commit with the item mycontainer_mydb corresponds to the number of commits per second on the database mydb running in the container mycontainer.
Glouton collects PostgreSQL logs for analysis in Bleemeo.
See Also
Section titled “See Also”If you run a connection pooler in front of PostgreSQL, see PgBouncer.