Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A Munin-plugin for pgpool-II
Python
Branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
.gitignore
README.md Update README.md
pgpool_connections Adding pid_file config option

README.md

munin_pgpool

A Munin-plugin for pgpool-II written by Viktor Petersson.

The plugin plots three values:

  • Wait for connection
  • Idle connections
  • num_init_children

Configuration

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 

Requirements

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).

How the values are derived

num_init_children

This value is simply retreived from pcp_pool_status.

Wait for connection

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.

Idle connections

This works just as the above plugin, but we look for the string "idle in transaction".

Access rights to PID file

Note that you should give a+r access rights to pgpool PID file

chmod a+r /var/run/pgpool/pgpool.pid
Something went wrong with that request. Please try again.