shell脚本--监控java进程存活脚本
#!/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进程存活脚本的更多相关文章
- linux使用shell脚本停止java进程
使用shell脚本停止java进程,过程就是先查出对应的java进程pid,然后kill掉 - | 其中xxx是对应进程的关键词(即从查出的所有java进程中分辨出目标进程)
- Zabbix 通过 JMX 监控 java 进程
参考: [ JMX monitoring ] [ Zabbix Java gateway ] [ JMX Monitoring (Java Gateway) not Working ] [ Monit ...
- 利用VisualVm和JMX远程监控Java进程
自Java 6开始,Java程序启动时都会在JVM内部启动一个JMX agent,JMX agent会启动一个MBean server组件,把MBeans(Java平台标准的MBean + 你自己创建 ...
- 通过JDK常用工具监控Java进程的内存占用情况
目录 1 JDK 工具的使用 2 查看 GC 日志信息 3 添加 JMS 远程监控 Tomcat是一款常用的Web容器, 它是运行在 JVM(Java Virtual Machine) 中的一个Jav ...
- Linux记录-JMX监控JAVA进程
3.修改xxx.sh 加入export JAVA_OPTS="-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.mana ...
- zabbix监控java内存的脚本
#!/bin/bash # 截取java的pid号 java_pid=`netstat -lnpt |grep |awk -F '/' '{print $1'}` # 截取$jstat命令的位置 js ...
- linux:使用python脚本监控某个进程是否存在(不使用crontab)
背景: 需要每天定时去检测crontab进程是否启动,所以不能用crontab来启动检测脚本了,直接使用while 循环和sleep方式实现定时检测 # coding:utf-8 import os ...
- 监控java进程是否正常运行
@echo off set _task=java.exe :checkstart for /f "tokens=1" %%n in ('tasklist ^| find " ...
- Java进程监控
目录 1.引言 2. 程序启停, 为进程自定义项目名称 3. 操作系统判断 4. 获取进程信息 5. 内存,CPU信息 6. 堆内存信息 7. 端口信息 8. 线程信息 9. MXBean使用样例 9 ...
随机推荐
- docker 网络模式详解
一.前言 Docker作为目前最火的轻量级容器技术,有很多令人称道的功能,如Docker的镜像管理.然而,Docker同样有着很多不完善的地方,网络方面就是Docker比较薄弱的部分.因此,我们有必要 ...
- shell中处理参数getopts命令
一.getopts 简介 由于shell命令行的灵活性,自己编写代码判断时,复杂度会比较高.使用内部命令 getopts 可以很方便地处理命令行参数.一般格式为:getopts optstring n ...
- Java面向对象(二)
面向对象(Object Oriented) Java支持面向对象三大特性:封装.继承.多态.(抽象)1.封装(Encapsulation)封装:隐藏对象内部的复杂性,只对外公开简单的接口.便于外界调用 ...
- 关于php 7.4编译安装
一个不错的文章 https://hqidi.com/150.html 贴个地址就好啦, 借鉴了一把,很良心
- solr7中文分词包
刚刚将solr4升级到了solr7.7,发现之前用的mmseg4j中文分词包用的时候会报错,插入新数据是创建索引会有异常 possible analysis error: startOffset mu ...
- 代码检查工具sonarqube介绍
SonarQube 是一款用于代码质量管理的开源工具,它主要用于管理源代码的质量.通过插件形式,可以支持众多计算机语言. 比如 java, C#, go,C/C++, PL/SQL,Cobol,Jav ...
- Linux常用命令之info、cal、echo命令
info命令,是Linux下info格式的帮助指令 执行man info可以查看info命令的 语法 info(选项)(参数) 选项 -d:添加包含info格式帮助文档的目录: -f:指定要读取的in ...
- gRPC应用实践
What is RPC? Remote Procedure Call is a high-level model for client-server communication. Assume the ...
- Django后台获取不到前端axios-post请求提交的参数的解决方法
解决方法 用 URLSearchParams 传递参数 let param = new URLSearchParams() param.append('username', 'admin') para ...
- js的DOM操作整理(整理)
js的DOM操作整理(整理) 一.总结 一句话总结: dom操作有用原生js的dom操作,也可以用对js封装过的jquery等插件来更加方便的进行dom操作 1.dom是什么? 对于JavaScrip ...