Check Memory Usage 94% used
Posted: Fri Mar 25, 2011 9:32 am
Hi All,
Please help on this.
I'm using Nagios Core v3.2.0 installed in SLES10. And the Remote Client installed in RHEL.
And i found that the Monitoring of Service Status for Memory Usage in Nagios is inccorrect.
Nagios Monitoring:
Host:mypc001 OS:Linux:Memory:-:Usage:- OK: 94 % Memory used
OS Level:
But the actual memory usual in OS level is 40% Memory used
# free -m
total used free shared buffers cached
Mem: 7829 3149 4680 0 179 2074
-/+ buffers/cache: 895 6934
Swap: 10015 0 10015
and currently I'm using check_memory.sh as below:
=====================================================================
#!/bin/sh
#
# Prueft Memory-Auslastung anhand free
# Uebergabevariablen:
#
# $1 Warning-Schwellenwert %
# $2 Critical-Schwellenwert %
#
# -----------------------------------------------------
if [ $# -lt 2 ]; then
echo "Usage: $0 with params for warning in % and critical in % : $0 90 95"
exit 2
fi
mem_total=`free -m | grep Mem: | awk '{ print $2}'`
mem_used=`free -m | grep Mem: | awk '{ print $3}'`
let perc_used=100*$mem_used/$mem_total
if [ $perc_used -gt $2 ]
then
echo "Critical: $perc_used % Memory used"
exit 2
fi
if [ $perc_used -gt $1 ]
then
echo "Warning: $perc_used % Memory used"
exit 1
else
echo "OK: $perc_used % Memory used"
exit 0
fi
=====================================================================
Please help on this.
I'm using Nagios Core v3.2.0 installed in SLES10. And the Remote Client installed in RHEL.
And i found that the Monitoring of Service Status for Memory Usage in Nagios is inccorrect.
Nagios Monitoring:
Host:mypc001 OS:Linux:Memory:-:Usage:- OK: 94 % Memory used
OS Level:
But the actual memory usual in OS level is 40% Memory used
# free -m
total used free shared buffers cached
Mem: 7829 3149 4680 0 179 2074
-/+ buffers/cache: 895 6934
Swap: 10015 0 10015
and currently I'm using check_memory.sh as below:
=====================================================================
#!/bin/sh
#
# Prueft Memory-Auslastung anhand free
# Uebergabevariablen:
#
# $1 Warning-Schwellenwert %
# $2 Critical-Schwellenwert %
#
# -----------------------------------------------------
if [ $# -lt 2 ]; then
echo "Usage: $0 with params for warning in % and critical in % : $0 90 95"
exit 2
fi
mem_total=`free -m | grep Mem: | awk '{ print $2}'`
mem_used=`free -m | grep Mem: | awk '{ print $3}'`
let perc_used=100*$mem_used/$mem_total
if [ $perc_used -gt $2 ]
then
echo "Critical: $perc_used % Memory used"
exit 2
fi
if [ $perc_used -gt $1 ]
then
echo "Warning: $perc_used % Memory used"
exit 1
else
echo "OK: $perc_used % Memory used"
exit 0
fi
=====================================================================