一、前言生产服务器需要实时监控资源使用率防止 CPU、内存、磁盘爆满导致业务宕机。本脚本实现CPU使用率监控、内存监控、磁盘空间监控、异常日志告警、阈值自定义可定时巡检服务器健康状态。二、服务器资源监控完整脚本可直接上线#!/bin/bash # 服务器资源监控告警脚本 LOG_FILE/var/log/monitor.log # 阈值定义 CPU_THRESH85 MEM_THRESH85 DISK_THRESH85 log_warn(){ echo [$(date %Y-%m-%d\ %H:%M:%S)] [WARN] $1 | tee -a $LOG_FILE } # 1. CPU使用率监控 CPU_USE$(top -bn1 | grep Cpu | awk {print $2} | cut -d% -f1) if [ ${CPU_USE%.*} -gt $CPU_THRESH ];then log_warn CPU使用率过高当前使用率$CPU_USE% fi # 2. 内存使用率监控 MEM_USE$(free | grep Mem | awk {print $3/$2 * 100}) if [ ${MEM_USE%.*} -gt $MEM_THRESH ];then log_warn 内存使用率过高当前使用率$MEM_USE% fi # 3. 磁盘使用率监控 DISK_USE$(df -h / | grep / | awk {print $5} | cut -d% -f1) if [ $DISK_USE -gt $DISK_THRESH ];then log_warn 根磁盘使用率过高当前使用率$DISK_USE% fi三、脚本功能详解监控 CPU 瞬时使用率超过85%告警监控系统内存占用高负载告警监控根分区磁盘使用率防止磁盘爆满所有异常写入日志方便溯源排查四、配置定时巡检每10分钟监控一次crontab -e # 每10分钟执行一次 */10 * * * * /bin/bash /data/monitor.sh五、扩展邮件/企业微信告警进阶企业环境可搭配 mail 工具或企业微信机器人触发阈值后实时推送告警消息实现无人值守运维。六、生产使用总结备份脚本是运维必备兜底方案必须定时执行监控脚本可提前发现服务器资源瓶颈所有自动化脚本必须传参灵活、日志完整、容错完善。
Shell实战——服务器状态监控 + 异常告警脚本(CPU/内存/磁盘)
一、前言生产服务器需要实时监控资源使用率防止 CPU、内存、磁盘爆满导致业务宕机。本脚本实现CPU使用率监控、内存监控、磁盘空间监控、异常日志告警、阈值自定义可定时巡检服务器健康状态。二、服务器资源监控完整脚本可直接上线#!/bin/bash # 服务器资源监控告警脚本 LOG_FILE/var/log/monitor.log # 阈值定义 CPU_THRESH85 MEM_THRESH85 DISK_THRESH85 log_warn(){ echo [$(date %Y-%m-%d\ %H:%M:%S)] [WARN] $1 | tee -a $LOG_FILE } # 1. CPU使用率监控 CPU_USE$(top -bn1 | grep Cpu | awk {print $2} | cut -d% -f1) if [ ${CPU_USE%.*} -gt $CPU_THRESH ];then log_warn CPU使用率过高当前使用率$CPU_USE% fi # 2. 内存使用率监控 MEM_USE$(free | grep Mem | awk {print $3/$2 * 100}) if [ ${MEM_USE%.*} -gt $MEM_THRESH ];then log_warn 内存使用率过高当前使用率$MEM_USE% fi # 3. 磁盘使用率监控 DISK_USE$(df -h / | grep / | awk {print $5} | cut -d% -f1) if [ $DISK_USE -gt $DISK_THRESH ];then log_warn 根磁盘使用率过高当前使用率$DISK_USE% fi三、脚本功能详解监控 CPU 瞬时使用率超过85%告警监控系统内存占用高负载告警监控根分区磁盘使用率防止磁盘爆满所有异常写入日志方便溯源排查四、配置定时巡检每10分钟监控一次crontab -e # 每10分钟执行一次 */10 * * * * /bin/bash /data/monitor.sh五、扩展邮件/企业微信告警进阶企业环境可搭配 mail 工具或企业微信机器人触发阈值后实时推送告警消息实现无人值守运维。六、生产使用总结备份脚本是运维必备兜底方案必须定时执行监控脚本可提前发现服务器资源瓶颈所有自动化脚本必须传参灵活、日志完整、容错完善。