aboutsummaryrefslogtreecommitdiff
path: root/README
blob: 13a7e50a53e2567c6a04d407b0ab668bc675905d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# PgBouncer exporter for Prometheus

This is a simple exporter for PgBouncer that makes several metrics available to
Prometheus.

Metrics are exported from the SHOW LISTS, STATS, POOLS and DATABASES command
output. For the full list, see the
prometheus\_pgbouncer\_exporter/collectors.py file.

Please send any comments or queries to Christopher Baines <mail@cbaines.net>.

## Installation

### Debian

You can build a Debian binary package from the source package in the git
repository. Alternatively, you can download a binary package from here:

<http://cbaines.net/projects/prometheus-pgbouncer-exporter/releases/>

### Other Operating Systems

I would recommend installing using setuptools, then running the
promtheus-pgbouncer-exporter script. A systemd service file is provided which
can be used if you have systemd.

## Authentication

The service connects to the pgbouncer admin console to gather metrics. The
service file runs the service as the postgres user (which is assumed to be the
user which pgbouncer is running as), such that it can access the admin console
(for which access is allowed if the login comes from via a Unix socket and the
client has the same user id as the pgbouncer service).

This setup does mean that the exporter service (when running as the postgres
user) has far more capabilities than it requires. A more secure approach is to
run the service as a unprivileged user, which is listed in the stats_users
configuration parameter, as this means the process does not have to run as the
postgres user, and will be restricted to using the SHOW command.