#!/bin/sh # # Copyright (C) 2006 Rodolphe Quiedeville # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; version 2 dated June, # 1991. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # # Script to monitor affected memory by domain # # $Log$ # Revision 1.0 2006/09/08 19:20:19 rodo # Created by Rodolphe Quiedeville # # Need to be run as root, add the following lines ... # # [xen*] # user root # # to /etc/munin/plugin-conf.d/munin-node # # # Parameters understood: # # config (required) # autoconf (optional - used by munin-config) # # # Magic markers (optional - used by munin-config and installation # scripts): # #%# family=auto #%# capabilities=autoconf XM="/usr/sbin/xm" if [ "$1" = "autoconf" ]; then echo yes exit 0 fi if [ "$1" = "config" ]; then echo 'graph_title Xen affected memory' echo 'graph_args --base 1024 --upper-limit 1024 -l 0' echo 'graph_vlabel Memory' echo 'graph_category xen' echo 'graph_total Total' echo 'graph_info This graph shows affected memory for each domain.' echo 'Domain_0.label Domain-0' echo 'Domain_0.draw AREA' $XM list | grep -v 'Mem' | grep -v 'Domain-0' | while read i; do name=`echo $i | awk '{ print $1 }' | sed 's/[\/.-]/_/g'` echo -n "$name.label " echo $i | awk '{ print $1 }' echo "$name.draw STACK" done exit 0 fi $XM list | grep -v 'Mem' | while read i; do name=`echo $i | awk '{ print $1 }' | sed 's/[\/.-]/_/g'` echo -n "$name.value " echo $i | awk '{ print $3 * 1024 * 1024 }' done