linux服务器内存、根目录使用率、某进程的监控告警脚本
脚本内容如下
#!/bin/bash
#磁盘超过百分之80发送邮件告警
DISK_USED=`df -T |sed -n "2p" |awk '{print ($4/$3)*100}'`
DISK_percentage=80
if [ `expr "$DISK_USED > $DISK_percentage"` ]
then
echo "$HOSTNAME服务器当前硬盘使用率为$DISK_USED%" | mail -s "服务器硬盘监控告警" 493630393@qq.com
fi
#内存使用率大于90%告警
mem_pused=`/usr/bin/free -m | sed -n '2p'|awk '{ print ($3+$6)/$2*100}'`
#memory usage percentage
percentage=90
#clean mem_cache 使用bc来进行比较,不然会报错
if [ $(echo "$mem_pused > $percentage"|bc) -eq 1 ]
then
echo "$HOSTNAME服务器当前内存使用率为$mem_pused%" | mail -s "服务器内存监控告警" 493630393@qq.com
echo "1qaz2wsx" |sudo -S sh /opt/shell/clean_mem_cache.sh
fi
#java_load进程宕机告警
JAVA_PROCESS=`ps -ef |grep java_load |grep -v grep |wc -l`
if [ $JAVA_PROCESS = 0 ]
then
echo "$HOSTNAME服务器上$JAVA_LOAD应用进程异常停止,正在自动开启" | mail -s "服务器java_load进程监控告警" 493630393@qq.com
nohup echo -e "70" |/opt/software/java_load > /dev/null 2>&1 &
fi
#tomcat进程宕机告警
#TOMCAT_PROCESS=`ps -ef |grep java |grep tomcat |grep -v grep |wc -l`
#if [ $TOMCAT_PROCESS = 0 ]
#then
# echo "$HOSTNAME服务器上tomcat应用进程已停止,请手动开启" | mail -s "服务器tomcat进程监控告警" 493630393@qq.com
#fi
#platform进程宕机告警
COMMONAPI_PROCESS=`ps -ef |grep java |grep common-api.jar |grep -v grep |wc -l`
if [ $COMMONAPI_PROCESS = 0 ]
then
echo "$HOSTNAME服务器上commonapi应用进程已停止,请手动开启" | mail -s "服务器tomcat进程监控告警" 493630393@qq.com
fi
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端