加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

服务器 内存、磁盘、cpu、swap 监控

发布时间:2020-12-15 07:07:34 所属栏目:安全 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #!/bin/bashMAILLIST="[email?protected]" #emailistMEM_CORDON=100 #内存使用大于这个值报警SWAP_CORDON=50 #交换区使用值大于这个报警 CPU_CORDON=5

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

#!/bin/bash

MAILLIST="[email?protected]"    #emailist

MEM_CORDON=100   #内存使用大于这个值报警
SWAP_CORDON=50  #交换区使用值大于这个报警  
CPU_CORDON=5    #cpu空闲小于这个值报警
DISK_CORDON=85  #磁盘占用大于这个值报警
HOSTNAME=`hostname`
DATA=`date`

send_warning()
{
    echo $MESSAGE | /bin/mail -s "$TITLE" "$MAILLIST" 
}

if [ $# -ne 0 ];then
    DISK_DIR=$1
else
    DISK_DIR="/dev/sdb1"
fi

#MEM|SWAP check
MEMSTATUS=`free | grep "Mem" | awk '{printf("%d",$3*100/$2)}'`
SWAPSTATUS=`free | grep "Swap" | awk '{printf("%d",$3*100/$2)}'`

if [ $MEMSTATUS -ge $MEM_CORDON ];then
    TITLE="[bad_girl]:$HOSTNAME mem usage"
    MESSAGE="Time:${DATA},Mem_used:${MEMSTATUS}%,Swap_used:${SWAPSTATUS}%"
    send_warning
fi

if [ $SWAPSTATUS -ge $SWAP_CORDON ];then
    TITLE="[bad_girl]:$HOSTNAME Swap usage"
    MESSAGE="Time:${DATA},Swap_used:${SWAPSTATUS}%"
    send_warning
fi    

#cpu

CPUSTATUS=`vmstat | awk '{print $15}' | tail -1`

if [ $CPUSTATUS -le $CPU_CORDON ];then
    TITLE="[bad_girl]:$HOSTNAME cpu usage"
    MESSAGE="Time:${DATA},MCpu_free:${CPUSTATUS}%"
fi

#disk use n%

DISKSTATUS=`df -h $DISK_DIR | awk '{print $5}' | tail -1 | tr -d %`

if [ $DISKSTATUS -ge $DISK_CORDON ];then
    TITLE="[bad_girl]:$HOSTNAME disk usage"
    MESSAGE="Time:${DATA},Disk_used:${DISKSTATUS}%"
    send_warning
fi

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读