首页 > 系统服务 > 详细

Shell之监控cpu、内存、磁盘脚本

时间:2019-08-15 16:41:39      阅读:104      评论:0      收藏:0      [点我收藏+]
#!/bin/bash

#获取内存情况

mem_total=`free | awk NR==2{print $2}`  #获取内存总大小
mem_use=`free  | awk NR==2{print $3}`  #获取内存使用大小

#统计内存使用率 (使用大小/总大小)

mem_use_rate=`awk BEGIN{print($mem_use/mem_total)*100}`

#echo $mem_use_rate

#获取磁盘使用率
disk_use_rate=`df -h | grep /dev/vda1 | awk -F [ %]+ {print $5}`

#echo $disk_use_rate

#获取cpu使用率
cpu_use_rate=`top -n 1 | grep Cpu |awk {print $2}`

#echo $cpu_use_rate

#报警时间
file_log=/home/error.log  #提前创建
now_time=`date +%F %T`

function send_mail(){

        mail -s "监控报警"      *******@qq.com < /home/error.log
}

function check(){

        if [[ "men_use_rate" > 80 ]] || [[ "disk_use_rate" > 5 ]] || [[ "cpu_use_rate" > 50 ]];then   
                echo "报警时间:"$now_time > $file_log
                echo "cpu使用率:${cpu_use_rate}% --> 磁盘使用率:${disk_use_rate}% --> 内存使用率:${men_use_rate}"
                send_mail
        fi
}

function main(){
        check
}
main

操作系统:centos7.5     上面获取的数据显示34,相当于34%   报警部分可根据情况自己写上面用的是sendmail(感觉不是很好用准备换)

free

技术分享图片

df -h

技术分享图片

top -n 1 (top是实时监控,-n 1 显示那一时刻的数据)

技术分享图片

 

Shell之监控cpu、内存、磁盘脚本

原文:https://www.cnblogs.com/aloneysir/p/11358070.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!