为Nagios定义自定义脚本检测内存状态
1.脚本如下~
#!/bin/bash#=========================================#File:check_vm.sh#Description:#Author:smileliuyb#Modify:smileliuyb#CreationDate:2013-1-14#LastModified:2013-1-14#=========================================#======check-arg===============if[[$4!=""]];thenecho$2$4|awk'$1!~/^[0-9]*[0-9,M,m,G,g]$/||$2!~/^[0-9]*[0-9,m,g,M,G]$/{print"Userlike./check_vm.sh-wfreememory[M,G]-cfreememory[M,G]";exit3}'if[$?-eq3];thenexit3fiif[[$1=='-w']]&&[[$3=='-c']];thenwarning=`echo$2|awk'$1~/[0-9]$/{print$1};$1~/[m,M]$/{print$1*1024};$1~/[g,G]$/{print$1*1024*1024}'`critical=`echo$4|awk'$1~/[0-9]$/{print$1};$1~/[m,M]$/{print$1*1024};$1~/[g,G]$/{print$1*1024*1024}'`elif[[$1=='-c']]&&[[$3=='-w']];thenwarning=`echo$4|awk'$1~/[0-9]$/{print$1};$1~/[m,M]$/{print$1*1024};$1~/[g,G]$/{print$1*1024*1024}'`critical=`echo$2|awk'$1~/[0-9]$/{print$1};$1~/[m,M]$/{print$1*1024};$1~/[g,G]$/{print$1*1024*1024}'`elseecho"Userlike./check_vm.sh-wfreememory[M,G]-cfreememory[M,G]"exit3fielseecho"Userlike./check_vm.sh-wfreememory[M,G]-cfree[M,G]"exit3fi#====see-memandcomparisonwitharg========freemem=`free-m|cut-d""-f17`if[$((freemem*1024))-le$critical];thenecho"Insufficientmemory,Only"$freemem"Marefree!"exit2elif[$((freemem*1024))-le$warning];thenecho"MemoryWarning,Only"$freemem"Marefree!"exit1elseecho"MemoryOK"exit0fi
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。