Build precise queries to find exactly what you need
Press ESC to close
Centos 7 Free command output changed a bit, plus I would count cached memory as free.
#!/bin/bash
if [ “$1” = “-w” ] && [ “$2” -gt “0” ] && [ “$3” = “-c” ] && [ “$4” -gt “0” ]; then FreeM=`free -m` memTotal_m=`echo “$FreeM” |grep Mem |awk ‘{print $2}’` memUsed_m=`echo “$FreeM” |grep Mem |awk ‘{print $3}’` memFree_m=`echo “$FreeM” |grep Mem |awk ‘{print $4}’` memBuffer_cache_m=`echo “$FreeM” |grep Mem |awk ‘{print $6}’` memAvailable_m=`echo “$FreeM” |grep Mem |awk ‘{print $7}’`
memUsed_m=$(($memTotal_m-$memFree_m-$memBuffer_cache_m))
memUsedPrc=`echo $((($memUsed_m*100)/$memTotal_m))||cut -d. -f1` if [ “$memUsedPrc” -ge “$4” ]; then echo “Memory: CRITICAL Total: $memTotal_m MB – Used: $memUsed_m MB – $memUsedPrc% used!|TOTAL=$memTotal_m;;;; USED=$memUsed_m;;;; BUFFER/CACHE=$memBuffer_cache_m;;;; AVAILABLE=$memAvailable_m;;;;” exit 2 elif [ “$memUsedPrc” -ge “$2” ]; then echo “Memory: WARNING Total: $memTotal_m MB – Used: $memUsed_m MB – $memUsedPrc% used!|TOTAL=$memTotal_m;;;; USED=$memUsed_m;;;; BUFFER/CACHE=$memBuffer_cache_m;;;; AVAILABLE=$memAvailable_m;;;;” exit 1 else echo “Memory: OK Total: $memTotal_m MB – Used: $memUsed_m MB – $memUsedPrc% used|TOTAL=$memTotal_m;;;; USED=$memUsed_m;;;; BUFFER/CACHE=$memBuffer_cache_m;;;; AVAILABLE=$memAvailable_m;;;;” exit 0 fi else # If inputs are not as expected, print help. sName=”`echo $0|awk -F ‘/’ ‘{print $NF}’`” echo -e “nntt### $sName Version 2.1###n” echo -e “# Usage:t$sName -w -c ” echo -e “tt= warnlevel and critlevel is percentage value without %n” echo “# EXAMPLE:t/usr/lib64/nagios/plugins/$sName -w 80 -c 90” echo -e “nCopyright (C) 2012 Lukasz Gogolin ([email protected]), improved by Nestor 2015nn” exit fi
We’ve completely redesigned the world’s largest repository of Nagios plugins and monitoring tools. Join thousands of users sharing monitoring solutions for servers, applications, and everything in between.
Due to our redesign, all existing accounts require a password reset to access your account again.
Ready to explore 6,100+ projects and contribute to the community?
Reset Password Create Account
Happy Monitoring!