ansible-roles/postgresql/tasks/munin.yml

37 lines
1.2 KiB
YAML

---
- name: Are Munin plugins present in /etc ?
stat:
path: /etc/munin/plugins
register: etc_munin_plugins
- name: Are Munin plugins present in /usr/share ?
stat:
path: /usr/share/munin/plugins
register: usr_share_munin_plugins
- name: Add Munin plugins for PostgreSQL
file:
state: link
src: '/usr/share/munin/plugins/{{item}}'
dest: '/etc/munin/plugins/{{item}}'
loop:
- postgres_bgwriter
- postgres_checkpoints
- postgres_connections_db
- postgres_users
- postgres_xlog
notify: restart munin-node
when: etc_munin_plugins.stat.exists and usr_share_munin_plugins.stat.exists
- name: Add Munin plugins for PostgreSQL (for specific databases)
file:
state: link
src: '/usr/share/munin/plugins/{{item[0]}}'
dest: '/etc/munin/plugins/{{item[0]}}{{item[1]}}'
loop: "{{ _plugins | product(_databases) | list }}"
vars:
_plugins: ['postgres_cache_', 'postgres_connections_', 'postgres_locks_', 'postgres_querylength_', 'postgres_scans_', 'postgres_size_', 'postgres_transactions_', 'postgres_tuples_']
_databases: postgresql_databases
notify: restart munin-node
when: etc_munin_plugins.stat.exists and usr_share_munin_plugins.stat.exists