Difference between revisions of "Talk:Monitoring /proc/user beancounters with nagios"
| Line 3: | Line 3: | ||
== Introduction == | == Introduction == | ||
| − | + | This script gives a warning if any parameter in a virtual environment (VZ) exceed 80% of resources. | |
| − | == | + | == packages basic installation == |
<pre> | <pre> | ||
aptitude install nail gawk | aptitude install nail gawk | ||
| Line 11: | Line 11: | ||
== nail configuration == | == nail configuration == | ||
| − | + | Configures <code> /etc/nailrc </code> or <code> ~/.mailrc </code> files. | |
<pre> | <pre> | ||
set smtp=smtp.server.org | set smtp=smtp.server.org | ||
| Line 18: | Line 18: | ||
</pre> | </pre> | ||
| − | == Script | + | == configuration == |
| + | |||
| + | Copy the script and configure <code> /etc/crontab </code> | ||
| + | |||
| + | == Script resource == | ||
<source lang=bash> | <source lang=bash> | ||
| Line 24: | Line 28: | ||
# Copyright (C) 2008 Mgual | # Copyright (C) 2008 Mgual | ||
# Distributed under to GNU General Public License v3 | # Distributed under to GNU General Public License v3 | ||
| − | # v0. | + | # v0.1 2008-08-13 |
| + | # Ajuntament de Benicarló | ||
# Miquel Gual Torner | # Miquel Gual Torner | ||
Revision as of 12:04, 13 August 2008
Contents
Introduction
This script gives a warning if any parameter in a virtual environment (VZ) exceed 80% of resources.
packages basic installation
aptitude install nail gawk
nail configuration
Configures/etc/nailrcor~/.mailrcfiles.
set smtp=smtp.server.org set from=nail@smtp.server.org set charset=iso-8859-1
configuration
Copy the script and configure /etc/crontab
Script resource
<source lang=bash>
- !/bin/bash resource.sh
- Copyright (C) 2008 Mgual
- Distributed under to GNU General Public License v3
- v0.1 2008-08-13
- Ajuntament de Benicarló
- Miquel Gual Torner
- !/bin/bash
echo "" | gawk -vVZ='ID' -vRESOURCE='Parametre' -vPBARRIER='%bar' -vPLIMIT='%lim' '
{
printf "%3s %-20s %3s %3s \n", VZ, RESOURCE , PBARRIER, PLIMIT > "/tmp/beancounters"
}
'
gawk '
/dummy/||/Version/||/uid/ { next }
! /:/ {
RESOURCE=$1
MAXHELD=$3
BARRIER=$4
LIMIT=$5
}
/:/ { gsub(/:/, "", $1)
printf "------- %s ------- \n",$1
VZ=$1
RESOURCE=$2
MAXHELD=$4
BARRIER=$5
LIMIT=$6
}
{
#printf "R=%s M=%s B=%s L=%s ", RESOURCE, MAXHELD, BARRIER, LIMIT
if (BARRIER>0) {
PBARRIER=MAXHELD*100/BARRIER
} else {
PBARRIER=0
}
if (LIMIT>0) {
PLIMIT=MAXHELD*100/LIMIT
} else {
PLIMIT=0
}
printf "%-20s %3d %3d ", RESOURCE , PBARRIER, PLIMIT
if (PBARRIER>=80) {
printf " Perill "
printf "%3d %-20s %3d %3d Perill\n", VZ, RESOURCE , PBARRIER, PLIMIT >> "/tmp/beancounters"
}
printf "\n"
}
' /proc/user_beancounters
echo "---------------------------------------------------" >> /tmp/beancounters echo "" | gawk -vVZ='ID' -vRESOURCE='Use%' '
{
printf "%3s %-20s \n", VZ, RESOURCE >> "/tmp/beancounters"
}
'
- Quota Disc
for i in $(vzlist | cut -d" " -f 8) do
vzctl exec $i df -h | gawk -vVEID=$i '/^simfs/ { if ($5 > "80%") { printf "%s %s\n", VEID, $5 } }' >>/tmp/beancounters
done
echo "---------------------------------------------------" >> /tmp/beancounters echo "" | gawk -vVZ='ID' -vRESOURCE='IUse%' '
{
printf "%3s %-20s \n", VZ, RESOURCE >> "/tmp/beancounters"
}
'
for i in $(vzlist | cut -d" " -f 8) do
vzctl exec $i df -i | gawk -vVEID=$i '/^simfs/ { if ($5 > "80%") { printf "%s %s\n", VEID, $5 } }' >>/tmp/beancounters
done
if wc -l)" != "5" ; then
cat /tmp/beancounters | nail -s Server:resource.sh perill@smtp-server.org
fi