contrib-munin/plugins/xen/xen_memory

61 lines
1.7 KiB
Bash
Executable File

#!/bin/sh
#
# Script to monitor memory status of the xen host
#
# Written by immerda project (admin(_at_)immerda.ch)
# 2007
# License: GPL
#
# Parameters understood:
#
# config (required)
# autoconf (optional - used by munin-config)
#
XM='/usr/sbin/xm'
if [ "$1" = "autoconf" ]; then
if [ -x "$XM" ]; then
echo yes
else
echo "no (xm not found)"
fi
exit 0
fi
if [ "$1" = "config" ]; then
echo 'graph_title Xen Memory'
echo 'graph_args --base 1000 -l 0'
echo 'graph_scale no'
echo 'graph_vlabel MB'
echo 'graph_category virtualization'
echo 'graph_info This graph shows of many mS wall time where used by a domain'
"$XM" info | while read -r name bla value; do
# total_memory 2047
# free_memory 1476
name=$(echo "$name" | sed -e"s/-/_/")
if [ "$name" = "total_memory" ] || [ "$name" = "free_memory" ]; then
echo "$name.label $name"
echo "$name.type GAUGE"
echo "$name.draw AREASTACK"
echo "$name.min 0"
if [ "$name" = "total_memory" ]; then
echo "$name.info total memory"
elif [ "$name" = "free_memory" ]; then
echo "$name.info free memory"
fi
fi
done
exit 0
fi
# shellcheck disable=SC2034
"$XM" info | while read -r name bla value; do
name=$(echo "$name" | sed -e"s/-/_/")
if [ "$name" = "total_memory" ] || [ "$name" = "free_memory" ]; then
echo "$name.value $value"
fi
done