shell脚本--监控java进程存活脚本

时间:2023-01-14 13:00:42
#!/bin/bash
base_dir=/opt
war_processor="tomcat"
jar_processor="manager-server.jar platform-server.jar platform-task.jar platform-trade.jar platform-user.jar"
IP_ADDR=`/usr/sbin/ifconfig |grep inet |awk '{print $2}'|head -`
MALL_ADDR="493630393@qq.com"
#磁盘超过百分之80发送邮件告警
disk_used() {
DISK_USED=`df -T |sed -n "2p" |awk '{print ($4/$3)*100}'`
DISK_percentage=
if [ `expr "$DISK_USED > $DISK_percentage"` ]
then
echo "$IP_ADDR:当前硬盘使用率为$DISK_USED%" | mail -s "服务器硬盘监控告警" $MALL_ADDR
fi
}
#内存使用率大于90%告警
mem_used() {
mem_pused=`/usr/bin/free -m | sed -n '2p'|awk '{ print ($3+$6)/$2*100}'`
#memory usage percentage
percentage=
#clean mem_cache 使用bc来进行比较,不然会报错
if [ $(echo "$mem_pused > $percentage"|bc) -eq ]
then
echo "$IP_ADDR:当前内存使用率为$mem_pused%" | mail -s "服务器内存监控告警" $MALL_ADDR
#echo "1qaz2wsx" |sudo -S sh /opt/shell/clean_mem_cache.sh
fi
}
#进程检测
process() {
for jar in $jar_processor
do
JAR_PROCESS=`ps -ef |grep $jar |grep -v grep |wc -l`
if [ ! -n "jar_processor" ]
then
break
else
if [ $JAR_PROCESS = ]
then
echo "$IP_ADDR:$jar进程已停止,请确认是否正常" | mail -s "服务器应用进程监控告警" $MALL_ADDR
fi
fi
done for war in $war_processor
do
WAR_PROCESS=`ps -ef |grep $war |grep -v grep |wc -l`
if [ ! -n "war_processor" ]
then
break
else
if [ $WAR_PROCESS = ]
then
echo "$IP_ADDR:$war进程已停止,请确认是否正常" | mail -s "服务器应用进程监控告警" $MALL_ADDR
fi
fi
done }
process
disk_used

shell脚本--监控java进程存活脚本的更多相关文章

  1. linux使用shell脚本停止java进程

    使用shell脚本停止java进程,过程就是先查出对应的java进程pid,然后kill掉 - | 其中xxx是对应进程的关键词(即从查出的所有java进程中分辨出目标进程)

  2. Zabbix 通过 JMX 监控 java 进程

    参考: [ JMX monitoring ] [ Zabbix Java gateway ] [ JMX Monitoring (Java Gateway) not Working ] [ Monit ...

  3. 利用VisualVm和JMX远程监控Java进程

    自Java 6开始,Java程序启动时都会在JVM内部启动一个JMX agent,JMX agent会启动一个MBean server组件,把MBeans(Java平台标准的MBean + 你自己创建 ...

  4. 通过JDK常用工具监控Java进程的内存占用情况

    目录 1 JDK 工具的使用 2 查看 GC 日志信息 3 添加 JMS 远程监控 Tomcat是一款常用的Web容器, 它是运行在 JVM(Java Virtual Machine) 中的一个Jav ...

  5. Linux记录-JMX监控JAVA进程

    3.修改xxx.sh 加入export JAVA_OPTS="-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.mana ...

  6. zabbix监控java内存的脚本

    #!/bin/bash # 截取java的pid号 java_pid=`netstat -lnpt |grep |awk -F '/' '{print $1'}` # 截取$jstat命令的位置 js ...

  7. linux:使用python脚本监控某个进程是否存在(不使用crontab)

    背景: 需要每天定时去检测crontab进程是否启动,所以不能用crontab来启动检测脚本了,直接使用while 循环和sleep方式实现定时检测 # coding:utf-8 import os ...

  8. 监控java进程是否正常运行

    @echo off set _task=java.exe :checkstart for /f "tokens=1" %%n in ('tasklist ^| find &quot ...

  9. Java进程监控

    目录 1.引言 2. 程序启停, 为进程自定义项目名称 3. 操作系统判断 4. 获取进程信息 5. 内存,CPU信息 6. 堆内存信息 7. 端口信息 8. 线程信息 9. MXBean使用样例 9 ...

随机推荐

  1. 关于shell脚本时遇value too great for base (error token is "08")

    今天在书写一个定时cp脚本时遇到了一个问题,value too great for base (error token is "08") 在网上查看到原来是以0开头的数字 系统会默 ...

  2. Java—常用数据类型

    1  Vector类 Vector类似于一个数组,但与数组相比在使用上有以下两个优点. (1) 使用的时候无需声明上限,随着元素的增加,Vector的长度会自动增加. (2) Vector提供额外的方 ...

  3. mysqld服务器如何查看使用变量的值

    你能用这个命令得到mysqld服务器缺省缓冲区大小: shell> mysqld --help 这个命令生成一张所有mysqld选项和可配置变量的表.输出包括缺省值并且看上去象这样一些东西: P ...

  4. 关于DOM中的model(将元素转成对象进行操作)

    DOM document (html, xml) object 将文档中的HTML元素转成js的对象 通过ID找到文档的元素转成js对象 var obj = document.getElementBy ...

  5. windows 下运行angualr/material2 项目

    第一步:到github上clone  angular/material2 项目 第二步:npm install 第三步: 打开git bash (cmd 或 powershell 是无法成功运行该项目 ...

  6. MySQL密码重置(root用户)

    分别在Windows下和Linux下重置了MYSQL的root的密码: 在windows下: 1:进入cmd,停止mysql服务:Net stop mysql 到mysql的安装路径启动mysql,在 ...

  7. python之OpenCv(三)---基本绘图

    opencv 提供了绘制直线.圆形.矩形等基本绘图的功能 1.绘直线 cv2.line(画布,起点坐标,终点坐标,颜色,宽度) 例如: cv2.line(image,(20,60),(300,400) ...

  8. Android KitKat Immersive Mode使用

    写了一个方法,在onCreate和onResume中调用即可,4.4以上可用. private void openImmersiveMode() { if (android.os.Build.VERS ...

  9. windows 设置CapsLock键开启大写后使用shift键取消大写

    1.打开控制面板——>时钟.语言和区域——>更改键盘或其它输入法——>更改键盘——>高级键设置——>要关闭Caps Lock 2.ok

  10. Mac OS X Yosemite & Arduino安装CH340 USB转串口驱动

    新买的Arduino开发板 USB转串口使用了CH340芯片,在Mac OS X Yosemite上正常安装驱动后,在Arduino IDE的端口没发现相应的设备,使用以下方法后就能使用USB转串口调 ...