mirror of
https://github.com/munin-monitoring/contrib.git
synced 2018-11-08 00:59:34 +01:00
58 lines
1.4 KiB
Bash
Executable File
58 lines
1.4 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# Plugin to plot OpenVZ VE Stats
|
|
#
|
|
# by Rene Weselowski
|
|
# http://www.dead.at
|
|
#
|
|
# Parameters:
|
|
#
|
|
# config (required)
|
|
# autoconf (optional - used by munin-config)
|
|
#
|
|
# $Log$
|
|
#
|
|
#%# family=auto
|
|
#%# capabilities=autoconf suggest
|
|
|
|
ATTRIBUTE=$(basename "$0" | sed 's/^openvz_//g')
|
|
|
|
|
|
if [ "$1" = "autoconf" ]; then
|
|
if which vzlist >/dev/null; then
|
|
echo yes
|
|
else
|
|
echo "no (missing 'vzlist' executable)"
|
|
fi
|
|
exit 0
|
|
fi
|
|
|
|
if [ "$1" = "suggest" ]; then
|
|
echo "laverage"
|
|
echo "status"
|
|
exit 0
|
|
fi
|
|
|
|
if [ "$1" = "config" ]; then
|
|
echo "graph_title $ATTRIBUTE"
|
|
echo "graph_args --base 1000 -l 0"
|
|
echo "graph_scale yes"
|
|
echo "graph_vlabel $ATTRIBUTE Value"
|
|
echo "graph_category openvz"
|
|
echo "graph_info This graph shows OpenVZ: $ATTRIBUTE"
|
|
vzlist -a -H --no-trim -o hostname | awk '{gsub(/\./,"_",$1)
|
|
print("'$ATTRIBUTE'"$1".label "$1"\n" \
|
|
"'$ATTRIBUTE'"$1".info '$ATTRIBUTE' for VE"$1)}'
|
|
exit 0
|
|
fi
|
|
|
|
filter() { cat; }
|
|
[ "$ATTRIBUTE" = 'laverage' ] && filter() { sed -e 's/[0-9\.]*\/\(.*\)\/.*$/\1/g'; }
|
|
[ "$ATTRIBUTE" = 'status' ] && filter() { sed -e 's/running/10/g;s/stopped/0/g'; }
|
|
#TODO: filter for uptime
|
|
|
|
vzlist -a -H --no-trim -o "hostname,$ATTRIBUTE" | filter | awk '{gsub(/\./,"_",$1)
|
|
print("'$ATTRIBUTE'"$1".value "$2)}'
|
|
|
|
exit 0
|