• 提取根分区磁盘占用率


    需求:

    1、编写sysmon.sh脚本
    (1)使用df命令提取出根分区的磁盘占用率,赋值给变量DUG。
    (2)使用mpstat命令提取CPU使用率(需安装sysstat软件包),赋值给变量CUG。
    (3)使用free命令提取出内存使用率,赋值给变量MUG。
    (4)判断上述监控项目是否超标,将需要告警的信息保存到/tmp/alert.txt文件。
    (5)判断/tmp/alert.txt文件是否存在,若存在则作为告警邮件发送。

      

     参考脚本:

    #!/bin/bash
    #脚本练习1
    
    #第一步、使用df命令提取出根分区的磁盘占用率,赋值给变量DUG
    DUG=`df -h |awk 'NR==2{print}'|awk '{print $5}'|awk -F '%' '{print $1}'`
    
    #第二步、使用mpstat命令提取CPU使用率(需安装sysstat软件包),赋值给变量CUG
    #(1)安装sysstat
    yum install wget make gcc gcc-c++ glibc libstdc++-devel mailx -y
    wget http://pagesperso-orange.fr/sebastien.godard/sysstat-11.0.0.tar.gz
    tar -xvf sysstat-11.0.0.tar.gz
    cd sysstat-11.0.0/
    ./configure
    make
    make install
    mpstat -V
    
    #判断sysstat软件是否安装成功
    if [ $? = 0 ];then
    echo "恭喜你sysstat 软件安装成功!"
    else
    exit
    fi
    
    #(2)提取CPU使用率
    CUG=`mpstat|grep 'all'|awk '{print $3}'`
    
    #第三步、使用free命令提取出内存使用率,赋值给变量MUG
    MUG=`free -m|grep 'Mem'|awk '{print $3}'`
    
    #第四步、判断上述监控项目是否超标,将需要告警的信息保存到/tmp/alert.txt文件
    #1.定义阈值
    if [ $DUG > 80 ];then
    echo "at `date`磁盘占用率已经达到${DUG}%,请及时清理" > /tmp/alert.txt
    elif [ $CUG > 50 ];then
    echo "at `date`CPU使用率达到${DUG}%,请及时查看" >> /tmp/alert.txt
    #第五步、判断/tmp/alert.txt文件是否存在,若存在则作为告警邮件发送
    if [ -e '/tmp/alert.txt' ];then
    mail -s '系统问题' 1557034472@qq.com < /tmp/alert.txt
    echo '' >/tmp/alert.txt #清空告警文件
    fi
  • 相关阅读:
    WordCount C语言实现求文本的字符数,单词数,行数
    iOS 数据持久化
    Apple store加急审核
    iOSTableViewCell不等高的几种方法
    Xcode 插件(时间就是生命)
    iOS UI组件汇总
    iOS之获取经纬度并通过反向地理编码获取详细地址
    iOS 开发常用宏
    iOS让你的app一直在后台活着(运行)
    OC动画——基础动画CABasicAnimation使用
  • 原文地址:https://www.cnblogs.com/tianfen/p/7800118.html
Copyright © 2020-2023  润新知