A Munin-plugin for pgpool-II written by Viktor Petersson.
The plugin plots three values:
- Wait for connection
- Idle connections
num_init_children
In order to authenticate to pgpool, we need to provide the credentials for pcp_pool_status
in plugins.conf:
If env.pcppath
is not specified, the plugin executes /usr/bin/pcp_pool_path
.
[pgpool_*]
env.host MyDBServer
env.port 9898
env.user pooladm
env.userpwd foobar123
env.pcppath /path/to/pcp_pool_status
env.pid_file /var/run/pgpool/pgpool.pid
There are two requirements for this plugin to work.
The first one is the Python library 'psutil'.
This can be easily installed using: pip install psutil
... or if you prefer easy_install: easy_install psutil
The second requirement is pcp_pool_status
, which is part of pgpool-II. This is used to access information about the pool.
It should also be said that this plugin must run on the server running pgpool since we look for processes (see below).
This value is simply retreived from pcp_pool_status
.
This one is a bit more tricky. What the plugin does is to simply look for processes named "wait for connection request" (with some filtering).
We then just count the number of occurrences and plot the value.
This works just as the above plugin, but we look for the string "idle in transaction".
Note that you should give a+r access rights to pgpool PID file
chmod a+r /var/run/pgpool/pgpool.pid