Commit bba67f16 authored by Anton Smith's avatar Anton Smith Committed by Achilleas Pipinellis

Docs - Postgres Exporter - add advanced configuration options

parent a4d374ac
...@@ -8,9 +8,8 @@ The [postgres exporter] allows you to measure various PostgreSQL metrics. ...@@ -8,9 +8,8 @@ The [postgres exporter] allows you to measure various PostgreSQL metrics.
To enable the postgres exporter: To enable the postgres exporter:
1. [Enable Prometheus](index.md#configuring-prometheus) 1. [Enable Prometheus](index.md#configuring-prometheus).
1. Edit `/etc/gitlab/gitlab.rb` 1. Edit `/etc/gitlab/gitlab.rb` and enable `postgres_exporter`:
1. Add or find and uncomment the following line, making sure it's set to `true`:
```ruby ```ruby
postgres_exporter['enable'] = true postgres_exporter['enable'] = true
...@@ -22,11 +21,41 @@ address is [listed in `trust_auth_cidr_addresses`](../../high_availability/datab ...@@ -22,11 +21,41 @@ address is [listed in `trust_auth_cidr_addresses`](../../high_availability/datab
exporter will not be able to connect to the database. exporter will not be able to connect to the database.
1. Save the file and [reconfigure GitLab][reconfigure] for the changes to 1. Save the file and [reconfigure GitLab][reconfigure] for the changes to
take effect take effect.
Prometheus will now automatically begin collecting performance data from Prometheus will now automatically begin collecting performance data from
the postgres exporter exposed under `localhost:9187`. the postgres exporter exposed under `localhost:9187`.
## Advanced configuration
In most cases, Postgres exporter will work with the defaults and you should not
need to change anything.
The following configuration options can be used to further customize the
Postgres exporter:
1. Edit `/etc/gitlab/gitlab.rb`:
```ruby
postgres_exporter['dbname'] = 'pgbouncer' # The name of the database to connect to.
postgres_exporter['user'] = 'gitlab-psql' # The user to sign in as.
postgres_exporter['password'] = '' # The user's password.
postgres_exporter['host'] = 'localhost' # The host to connect to. Values that start with '/' are for unix domain sockets (default is 'localhost').
postgres_exporter['port'] = 5432 # The port to bind to (default is '5432').
postgres_exporter['sslmode'] = 'require' # Whether or not to use SSL. Valid options are:
# 'disable' (no SSL),
# 'require' (always use SSL and skip verification, this is the default value),
# 'verify-ca' (always use SSL and verify that the certificate presented by the server was signed by a trusted CA),
# 'verify-full' (always use SSL and verify that the certification presented by the server was signed by a trusted CA and the server host name matches the one in the certificate).
postgres_exporter['fallback_application_name'] = '' # An application_name to fall back to if one isn't provided.
postgres_exporter['connect_timeout'] = '' # Maximum wait for connection, in seconds. Zero or not specified means wait indefinitely.
postgres_exporter['sslcert'] = 'ssl.crt' # Cert file location. The file must contain PEM encoded data.
postgres_exporter['sslkey'] = 'ssl.key' # Key file location. The file must contain PEM encoded data.
postgres_exporter['sslrootcert'] = 'ssl-root.crt' # The location of the root certificate file. The file must contain PEM encoded data.
```
1. Save the file and [reconfigure GitLab][reconfigure] for the changes to take effect.
[← Back to the main Prometheus page](index.md) [← Back to the main Prometheus page](index.md)
[1131]: https://gitlab.com/gitlab-org/omnibus-gitlab/merge_requests/1131 [1131]: https://gitlab.com/gitlab-org/omnibus-gitlab/merge_requests/1131
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment