Nagios监控内存脚本
2015-06-02 00:00
459 查看
#!/bin/bash #Filename:check_mem.sh #if [ "$1" = "-w" ] && [ "$2" -gt "0" ] && [ "$3" = "-c" ] && [ "$4" -gt "0" ]; then if [[ "$#" -eq "4" ]]; then memTotal_b=`free -b |grep Mem |awk '{print $2}'` memFree_b=`free -b |grep Mem |awk '{print $4}'` memBuffer_b=`free -b |grep Mem |awk '{print $6}'` memCache_b=`free -b |grep Mem |awk '{print $7}'` memTotal_m=`free -m |grep Mem |awk '{print $2}'` memFree_m=`free -m |grep Mem |awk '{print $4}'` memBuffer_m=`free -m |grep Mem |awk '{print $6}'` memCache_m=`free -m |grep Mem |awk '{print $7}'` memUsed_b=$(($memTotal_b-$memFree_b-$memBuffer_b-$memCache_b)) memUsed_m=$(($memTotal_m-$memFree_m-$memBuffer_m-$memCache_m)) memUsedPrc=$((($memUsed_b*100)/$memTotal_b)) if [ "$memUsedPrc" -ge "$4" ]; then echo "Memory: CRITICAL Total: $memTotal_m MB - Used: $memUsed_m MB - $memUsedPrc% used!|TOTAL=$memTotal_b;;;; USED=$memUsed_b;;;; CACHE=$memCache_b;;;; BUFFER=$memBuffer_b;;;;" $(exit 2) elif [ "$memUsedPrc" -ge "$2" ]; then echo "Memory: WARNING Total: $memTotal_m MB - Used: $memUsed_m MB - $memUsedPrc% used!|TOTAL=$memTotal_b;;;; USED=$memUsed_b;;;; CACHE=$memCache_b;;;; BUFFER=$memBuffer_b;;;;" $(exit 1) else echo "Memory: OK Total: $memTotal_m MB - Used: $memUsed_m MB - $memUsedPrc% used|TOTAL=$memTotal_b;;;; USED=$memUsed_b;;;; CACHE=$memCache_b;;;; BUFFER=$memBuffer_b;;;;" $(exit 0) fi else echo "check_mem v1.1" echo "" echo "Usage:" echo "check_mem.sh -w <warnlevel> -c <critlevel>" echo "" echo "warnlevel and critlevel is percentage value without %" echo "" echo "Copyright (C) 2015 Nortorm (nortorm@yeah.net)" exit 3 fi
相关文章推荐
- Nagios监控磁盘脚本
- iOS系统关于URL Schemes的漏洞探究
- 获取iOS应用的URL Schemes
- IOS多语言环境自由切换
- ios各种证书相关
- CocoaPods 它是什么?如何运行的?
- iOS多线程之NSOperation和GCD的比较
- iOS键盘与NSLayoutConstraint
- ios动画学习(二)
- iOS开发学习第十课——高级指针
- ios中的coredata的使用
- 判断IOS判断以便进行适配
- iOS NSString追加字符串的方法
- iOS 加急审核亲体验
- iOS开发实战技巧
- iOS之画饼图
- iOS开发 之iOS沙盒(sandbox)机制和文件操作(一)
- iOS 内核堆利用技术点之 mach_msg ool
- ios指南针的实现(CoreLocation)
- ios 根据类名获取类名的属性