LibreNMS - snmp extend check postgres
check_postgres.pl
Get the script:
wget https://github.com/bucardo/check_postgres/archive/master.zip
Unzip and copy it where you need. Make it executable.
LibreNMS script
Get the script and make it executable:
wget https://github.com/librenms/librenms-agent/raw/master/snmp/postgres -O /etc/snmp/postgres && chmod +x /etc/snmp/postgres
In case of bug on the user/service, adapt $cpg --dbservice=$DBuser --action dbstats | awk -F ' ' \'
Verify the path to check_postgres.pl in /etc/snmp/postgres is correct.
pg_service
Modify/create and adapt to your configuration /etc/postgresql-common/pg_service.conf:
[yourServiceName] host=127.0.0.1 port=5432 user=your_adapted_user password=your_password dbname=your_db_name sslmode=require
Restart the service.
.pgpass
The file .pgpass in a user's home directory or the file referenced by PGPASSFILE can contain passwords to be used if the connection requires a password (and no password has been specified otherwise).
This file should contain lines of the following format:
hostname:port:database:username:password
SNMP Configuration
Adapt your /etc/snmp/snmpd.conf with:
extend postgres /etc/snmp/postgres
Restart the service.
Check Command
Adapt the user and path to your configuration:
sudo -u Debian-snmp /etc/snmp/postgres
Sources
- https://docs.librenms.org/Extensions/Applications/#postgres
- https://github.com/bucardo/check_postgres
- https://bucardo.org/check_postgres/
- https://bucardo.org/check_postgres/check_postgres.pl.html
- https://www.digitalocean.com/community/tutorials/how-to-monitor-your-managed-postgresql-database-using-nagios-core-on-ubuntu-18-04
- https://docs.postgresql.fr/8.1/libpq-pgpass.html