简单的Shell脚本监控,支持Centos

上个月, 买的阿里云ECS磁盘爆了。命令执行不了。操蛋。

其实服务器一般来说监控必不可少。 但是如果是自己的云服务器或者测试环境的。 就偷懒了。很不想搞。

于是就搞了一个shell脚本的。用来监控 CPU, 磁盘, 内存三个指标。功能简单。适合测试环境或者自己的服务器做简单的监控。

脚本做了钉钉推送。方便在线提醒。

脚本中也有写明使用方式。添加cron, 每分钟调度一次。一般来说够用了。

欢迎大家使用。如果好的话希望大家到github 给我点个赞 谢谢。

#!/bin/bash

##############################################
#
# Author: chang.ray
#
# Last modified: 2022-08-06
#
# 收集系统CPU, 磁盘, 内存指标信息, 到达阈值进行预警
# 
# 食用方式:
# 1. 修改 钉钉回调地址
# 2. 上传脚本
# 3. chmod +x monitor.sh;  修改为可执行文件
# 4. 计划任务中加入以下指令, 每分钟扫描一次
# 5. crontab -e
# 6. cron: */1 * * * * /home/admin/backup/monitor.sh >/dev/null 2>&1
#
##############################################


# wehook url
Dingding_Url="https://oapi.dingtalk.com/robot/send?access_token=2fca*****3bf"
# 这里可以i指定钉钉消息昵称,将会进行@处理
user=phone_number
# 机器别名,通知时使用
machineName="Ali_8.131.241.140"

#获取cpu使用率
cpuIdea=`top -b -n 1 | head -5 | awk -F '[, ]+' 'NR==3 {print $8}'`
cpuIdea=$(printf "%.0f" $cpuIdea)
#获取磁盘使用率
data_name="/" 
diskUsage=`df -h | grep -w $data_name | awk -F'[ %]+' '{print $5}'`

#获取内存情况
mem_total=`free -m | awk -F '[ :]+' 'NR==2 {print $2}'`
mem_used=`free -m | awk -F '[ :]+' 'NR==2 {print $3}'`

#统计内存使用率
mem_used_persent=`awk 'BEGIN{printf"%.0f\n",('$mem_used' / '$mem_total')*100}'`

#获取报警时间
now_time=`date '+%F %T'`


#主机信息
Date_time=`date "+%Y-%m-%d %H:%M:%S"`
IP_addr=`ifconfig $ifconfig | grep "inet" |awk 'NR==1{ print $2}'`

#发送钉钉消息
function SendDownMessageToDingding(){
   curl -s "${Dingding_Url}" -H 'Content-Type: application/json' -d "
   {
    'msgtype': 'text',
    'text': {
               'content': 
'ALIECS资源监控
资源耗尽预警!
机器别名:${machineName}
时间:${Date_time}
资源状况如下:
【空闲CPU:${cpuIdea}%】
【磁盘使用率:${diskUsage}%】
【内存使用率:${mem_used_persent}%】 \n'
            },
    'at': {'atMobiles': ['${user}'],  'isAtAll': true}
   }"
}

echo $cpuIdea
echo $diskUsage
echo $mem_used_persent

# 此处定义阈值, 可以修改阈值
function check(){
   if [[ "$cpuIdea" -le 30 ]] || [[ "$diskUsage" -ge 70 ]] || [[ "$mem_used_persent" -ge 70 ]];then
      SendDownMessageToDingding
   fi
}
check

推送效果如下:

求赞蟹蟹:有好的脚本也希望大家多多贡献。

https://github.com/MisterChangRay/scriptshttps://github.com/MisterChangRay/scripts

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值