1.脚本如下~

  1. #!/bin/bash
  2. #=========================================
  3. #File:      check_vm.sh
  4. #Description:
  5. #Author:    smileliuyb
  6. #Modify:    smileliuyb
  7. #Creation Date: 2013-1-14
  8. #Last Modified: 2013-1-14
  9. #=========================================
  10. #======check-arg===============
  11. if [[ $4 != "" ]];then
  12. echo $2 $4 | awk '$1 !~ /^[0-9]*[0-9,M,m,G,g]$/ || $2 !~ /^[0-9]*[0-9,m,g,M,G]$/{print "User like ./check_vm.sh -w freememory[M,G] -c freememory[M,G]";exit 3}'
  13. if [ $? -eq 3 ];then
  14. exit 3
  15. fi
  16. if [[ $1 == '-w' ]] && [[ $3 == '-c' ]];then
  17. warning=`echo $2 | awk '$1 ~ /[0-9]$/{print $1};$1 ~ /[m,M]$/{print $1*1024};$1 ~ /[g,G]$/{print $1*1024*1024}'`
  18. critical=`echo $4 | awk '$1 ~ /[0-9]$/{print $1};$1 ~ /[m,M]$/{print $1*1024};$1 ~ /[g,G]$/{print $1*1024*1024}'`
  19. elif [[ $1 == '-c' ]] && [[ $3 == '-w' ]];then
  20. warning=`echo $4 | awk '$1 ~ /[0-9]$/{print $1};$1 ~ /[m,M]$/{print $1*1024};$1 ~ /[g,G]$/{print $1*1024*1024}'`
  21. critical=`echo $2 | awk '$1 ~ /[0-9]$/{print $1};$1 ~ /[m,M]$/{print $1*1024};$1 ~ /[g,G]$/{print $1*1024*1024}'`
  22. else
  23. echo "User like ./check_vm.sh -w freememory[M,G] -c freememory[M,G]"
  24. exit 3
  25. fi
  26. else
  27. echo "User like ./check_vm.sh -w freememory[M,G] -c free[M,G]"
  28. exit 3
  29. fi
  30. #====see-mem and comparison with arg========
  31. freemem=`free -m | cut -d " " -f17`
  32. if [ $(( freemem*1024 )) -le $critical ];then
  33. echo "Insufficient memory,Only"$freemem"M are free!"
  34. exit 2
  35. elif [ $(( freemem*1024 )) -le $warning ];then
  36. echo "Memory Warning,Only"$freemem"M are free!"
  37. exit 1
  38. else
  39. echo "Memory OK"
  40. exit 0
  41. fi

转载于:https://blog.51cto.com/smileliuyb/1118219

为Nagios定义自定义脚本检测内存状态相关推荐

  1. nagios系列(七)nagios通过自定义脚本的方式监控mysql主从同步

    nagios监控mysql主从同步 起因:nagios可能监控到mysql服务的运行情况,但确不能监控mysql的主从复制是否正常:有时候,同步已经停止,但管理人员却不知道. 登陆mysql从服务器, ...

  2. 在nagios中使用nrpe自定义脚本

    nrpe的安装     tar xvfz nrpe-2.13.tar.gz cd nrpe-2.13 ./configure make all make install-plugin make ins ...

  3. vbs获取群聊当前内容_通过VBS脚本批量检测服务器状态 - 易本地工作室-Ebend SoftwareNetwork Studio - 群发,采集,管理类软件定制开发服务【易本地工作室】...

    脚本名称:通过VBS脚本批量检测服务器状态 脚本语言:VBS 原创作者:易本地工作室 艾云超 官方网站:易本地工作室 授权状态:免费 功能说明:通过VBS脚本批量检测服务器状态,是否可以访问,可以自定 ...

  4. zabbix监控mysql内存_zabbix通过自定义脚本监控nginx,php-fpm和mysql占用内存数和进程的个数...

    zabbix通过自定义脚本监控nginx,php-fpm和mysql占用内存数和进程的个数 首先,在zabbix脚本目录下添加一个脚本,写入如下代码 #!/bin/bash #license:GPL ...

  5. 【逗老师带你学IT】PRTG自定义脚本获取H3C Loadbalance负载均衡链路状态

    本文介绍如何使PRTG监控系统的自定义脚本功能,ssh登录网络设备,抓取很多snmp无法获取的监控指标. 本文主要涉及的技术点: 1.python paramiko模块应用 2.paramiko模块回 ...

  6. Nginx学习笔记3:Shell脚本检测Nginx服务状态

    前言 nginx 服务启动后,我们需要对其服务状态进行监控,今天学习过程中了解到一段非常有用的小脚本,不仅可以监控Nginx,也可以用来监控其他服务 脚本 A=`ps -C nginx –no-hea ...

  7. python脚本自动消除安卓版_Android:检测内存泄漏的自动化测试Python脚本

    #! /usr/bin/python3#-*- coding: utf-8 -*- importos, sys, time, logging#下列时间单位均为秒#执行时间 exec_time = 15 ...

  8. 如何在linux下检测内存泄漏

    1.开发背景 在 windows 下使用 VC 编程时,我们通常需要 DEBUG 模式下运行程序,而后调试器将在退出程序时,打印出程序运行过程中在堆上分配而没有释放的内存信息,其中包括代码文件名.行号 ...

  9. 使用LeakCanary检测内存泄露

    前言 刚才在项目里使用LeakCanary检测出了一个使用NotificationBuilder导致的内存泄露,发现LeakCanary真是神器啊.这里转载一篇介绍LeakCanary使用的博客,里面 ...

最新文章

  1. [每天进步一点 -- 流水账]第3周
  2. git branch 为什么会进入编辑状态_Git很难,搞砸很容易,好在有神奇命令让时光倒流...
  3. 浅析Memcache和Redis
  4. 理解分布式一致性:Paxos协议之Cheap Paxos Fast Paxos
  5. VMware10中安装Mac10.9.3
  6. enum与int、String之间的转换
  7. java未释放资源_DruidDataSource关闭资源未释放
  8. 软件开发生命周期来说明不同的测试的使用情况
  9. 解决拼音汉字混合搜索,由于同音字导致搜出不相干的内容
  10. 【Arduino实验03 智能红绿灯】
  11. App消息推送的原理
  12. 央行征信爬虫解决方案
  13. HTML+CSS大作业——动画漫展学习资料电影模板(6页) 网页设计作业 _ 动漫网页设计作业,网页设计作业 _ 动漫网页设计成品,网页设计作业 _ 动漫网页设计成品模板下载
  14. python 格林威治时间转换为标准时间格式
  15. Codeforces Round #583 E Petya and Construction (构造)
  16. iOS开发 Tips 保存视频文件到相册
  17. 我的一百个2019(三):2019,我赚钱了!
  18. python下载图片 referer_Python必应超清壁纸爬虫下载|Python爬取必应每日图片源码 - PS下...
  19. 精细化运营时代,金融魔镜如何助力各产品线实现业务增长
  20. 分段地址变换过程c语言,段页式存储结构

热门文章

  1. java调用c库实例
  2. 南洋理工大学科学家研发组装机器人,可以帮助用户组装椅子
  3. HBase java 开发
  4. visual studio 设计第一个WinForm小程序
  5. 【Linux】 JDK安装及配置 (tar.gz版)
  6. 今天意外和身份证结缘
  7. 正确重置MySQL密码
  8. JavaScript中实现私有属性的写类方式(2)
  9. LinFu Dynamic Proxy - LinFu 2.3, LinFu.DynamicProxy 1.031
  10. Centos7上安装 elasticsearch-6.2.2及相关插件