diff options
author | mh <mh@immerda.ch> | 2008-10-01 21:06:14 +0000 |
---|---|---|
committer | mh <mh@immerda.ch> | 2008-10-01 21:06:14 +0000 |
commit | 2176f3295148a6cc22bafb54007db972d749dc44 (patch) | |
tree | 5f8c91e1eb920e8872e2c8b01ade6896bb8e9945 /files/munin | |
parent | 2d85eb59b272f8c8ed5990d58c0b9857b3b068eb (diff) |
Merge commit 'puzzle/development'
Diffstat (limited to 'files/munin')
-rw-r--r-- | files/munin/puppetresources.mysql | 39 | ||||
-rw-r--r-- | files/munin/puppetresources.postgres | 37 |
2 files changed, 76 insertions, 0 deletions
diff --git a/files/munin/puppetresources.mysql b/files/munin/puppetresources.mysql new file mode 100644 index 0000000..29c1104 --- /dev/null +++ b/files/munin/puppetresources.mysql @@ -0,0 +1,39 @@ +#!/bin/sh +# +# Plugin to monitor resource count as managed by puppet +# Written by David Schmitts +# Adapted by Marcel Haerry, Puzzle ITC <haerry(at)puzzle.ch +# +# Parameters: +# +# config (required) +# +# Config variables: +# +# mysqlopts: options for mysql + +MYSQL_OPTS=${mysqlopts:-} +MYSQL_DB=${puppetdb:-puppet} + +function select_resources() { + echo "select count(*) as count, hosts.name from resources join hosts on (host_id = hosts.id) group by hosts.name order by count(*) DESC" | mysql $MYSQL_OPTS -N $MYSQL_DB +} + +if [ "$1" = "config" ]; then + + echo 'graph_title Puppet Resources' + echo 'graph_args -l 0 --base 1000' + echo 'graph_vlabel configured resources' + echo 'graph_category other' + select_resources | while read count hostname; do + graphname="$(echo "$hostname" | tr '.-' _)" + echo "$graphname.label $hostname" + echo "$graphname.type GAUGE" + done + exit 0 +fi + +select_resources | while read count hostname; do + graphname="$(echo "$hostname" | tr '.-' _)" + echo "$graphname.value $count" +done diff --git a/files/munin/puppetresources.postgres b/files/munin/puppetresources.postgres new file mode 100644 index 0000000..89fd6ba --- /dev/null +++ b/files/munin/puppetresources.postgres @@ -0,0 +1,37 @@ +#!/bin/sh +# +# Plugin to monitor resource count as managed by puppet +# +# Parameters: +# +# config (required) + +function select_resources() { + psql -c "select count(*) as count, hosts.name from resources join hosts on (host_id = hosts.id) group by hosts.name order by count(*) DESC" -A -F " " -t puppet +} + +if [ "$1" = "config" ]; then + + echo 'graph_title Puppet Resources' + echo 'graph_args -l 0 --base 1000' + echo 'graph_vlabel configured resources' + echo 'graph_category other' + select_resources | while read count hostname; do + graphname="$(echo "$hostname" | tr '.-' _)" + echo "$graphname.label $hostname" + echo "$graphname.type GAUGE" + done + exit 0 +fi + +select_resources | while read count hostname; do + graphname="$(echo "$hostname" | tr '.-' _)" + echo "$graphname.value $count" +done + +if [ -f /proc/vmstat ]; then + awk '/pswpin/ { print "swap_in.value " $2 } /pswpout/ { print "swap_out.value " $2 }' < /proc/vmstat +else + awk '/swap/ { print "swap_in.value " $2 "\nswap_out.value " $3 }' < /proc/stat +fi + |