> ## Documentation Index
> Fetch the complete documentation index at: https://docs.honeycomb.io/llms.txt
> Use this file to discover all available pages before exploring further.

# PostgreSQL

<Badge className="hny-badge-enterprise-addon" stroke>Ent+</Badge>

<Note>
  This feature is available as an add-on for the [Honeycomb Enterprise plan](https://www.honeycomb.io/pricing/).
  Please contact your Honeycomb account team for details.
</Note>

## Supported Platforms

| Platform | Metrics | Logs | Traces |
| :------- | :------ | :--- | :----- |
| Linux    | ✓       | ✓    |        |
| Windows  | ✓       | ✓    |        |
| macOS    | ✓       | ✓    |        |

## Prerequisites

This source supports PostgreSQL versions 10.18 and higher.

The monitoring user must be granted `SELECT` on `pg_stat_database`.

## Configuration Table

| Parameter                         | Type                | Default                                                                                                                                                                                             | Description                                                                                                                                                                       |
| :-------------------------------- | :------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| telemetry\_types                  | `telemetrySelector` | `["Logs", "Metrics"]`                                                                                                                                                                               | Choose Telemetry Type.                                                                                                                                                            |
| postgresql\_log\_path             | `strings`           | For CentOS / RHEL: `- \"/var/log/postgresql/postgresql_.log\"` \nFor SLES: `- \"/var/lib/pgsql/data/log/postgresql_.log\"` \nFor Debian / Ubuntu: `- \"/var/lib/pgsql/_/data/log/postgresql_.log\"` | Path to Postgres log file(s).                                                                                                                                                     |
| start\_at                         | `enum`              | end                                                                                                                                                                                                 | Start reading the file from the 'beginning' or 'end'.                                                                                                                             |
| username\*                        | `string`            |                                                                                                                                                                                                     | Username used to authenticate.                                                                                                                                                    |
| password\*                        | `string`            |                                                                                                                                                                                                     | Password used to authenticate.                                                                                                                                                    |
| endpoint                          | `string`            | localhost:5432                                                                                                                                                                                      | The endpoint of the Postgres server. If transport is set to unix, the endpoint will internally be translated from host:port to /host.s.PGSQL.port.                                |
| transport                         | `enum`              | tcp                                                                                                                                                                                                 | The transport protocol used to connect to Postgres. Valid values are `tcp`, or `unix`.                                                                                            |
| databases                         | `strings`           |                                                                                                                                                                                                     | The list of databases for which the receiver will attempt to collect statistics. If an empty list is provided, the receiver will attempt to collect statistics for all databases. |
| collection\_interval              | `int`               | 60                                                                                                                                                                                                  | Sets how often (seconds) to scrape for metrics.                                                                                                                                   |
| enable\_tls                       | `bool`              | false                                                                                                                                                                                               | Whether or not to use TLS.                                                                                                                                                        |
| enable\_tlsinsecure\_skip\_verify | `bool`              | false                                                                                                                                                                                               | Enable to skip TLS certificate verification.                                                                                                                                      |
| ca\_file                          | `string`            |                                                                                                                                                                                                     | Certificate authority used to validate the database server's TLS certificate.                                                                                                     |
| cert\_file                        | `string`            |                                                                                                                                                                                                     | A TLS certificate used for client authentication, if mutual TLS is enabled.                                                                                                       |
| key\_file                         | `string`            |                                                                                                                                                                                                     | A TLS private key used for client authentication, if mutual TLS is enabled.                                                                                                       |
