首页 > 系统相关 >Linux 定时任务crontab监控重启java服务脚本

Linux 定时任务crontab监控重启java服务脚本

时间:2022-11-11 16:03:49浏览次数:80  
标签:grep name 重启 crontab Linux java proc

linux服务器下,利用Linux定时器和简单监控脚本,监控自动重启java服务。

注意:脚本最好在Linux系统中用touch建立.sh文件,并用shmod + x + ‘脚本文件名’,在window下编辑有可能会出现空格编码问题。

# cd /var/log

脚本

#! /bin/sh

#下面很重要

#需要jdk环境变量和路径,最重要的是路径,切换路径!切换路径!切换路径!重要的事说三遍,还有java环境变量的导入

#生效!!!!
#====================
source /etc/profile
cd /opt/speak # 切换到需要执行的java服务jar包的路径
#====================

          
proc_name="dataBack"        # 进程名
file_name="/mnt/bindmonitor.log"       # 日志文件
pid=0

proc_num()            # 计算进程数
{
 num=`ps -ef | grep $proc_name | grep -v grep | wc -l`
 return $num
}

proc_id()            # 进程号
{
 pid=`ps -ef | grep $proc_name | grep -v grep | awk '{print $2}'`
}

proc_num
number=$?
if [ $number -eq 0 ]         # 判断进程是否存在
then 
 nohup python -u /usr/local/CCDTSoft/midou/moss/task/md_capture.py >> /usr/local/CCDTSoft/midou/moss/task/md_capture.log -n 1 &
              # 重启进程的命令,请相应修改
 proc_id           # 获取新进程号
 echo ${pid}, `date` >> $file_name  # 将新进程号和重启时间记录
fi

crontab 设置的定时器

# crontab -e */5 * * * * /mnt/bindmonitor.sh

配置完后重启crontab服务:
# service crond restart

查看crontab中的内容
# crontab –1

如有问题可查看crontab中的日志

# cd /var/log
# cat cron

标签:grep,name,重启,crontab,Linux,java,proc
From: https://www.cnblogs.com/willelmliu/p/16880729.html

相关文章

  • java 更新list内的元素
    参考:https://blog.csdn.net/liangqi1234/article/details/50176451/***更新list内的元素。*@paramobjlist*@paramoldObj旧对象*@paramnewObj要更新的对象*......
  • 【Java】多线程 语法 使用
    在java中使用多线程有三种方式。1.继承Thread类;2.实现Runnable接口;3.匿名内部类;第一种一般不用,因为java只允许单继承,万一这个业务类有父类就无法继承了。第二种如下:publicc......
  • 配置java_home
    查看有无环境变量echo$JAVA_HOME 查找java安装位置 find/-namejava 编辑环境变量vim/etc/profile 配置:exportJAVA_HOME=/usr/lib/jvm/java-1.8.0-open......
  • 【网络IO模型(二)】Linux IO 模型
    作为软件开发者特别是server开发,平时要面对大量的跨进程交互场景,各种跨进程调用。虽然现在的开发语言为我们提供了很好的封装,不用过度关心底层网络io的细节,但是作为开发者,还......
  • 【Java】 java -jar 命令 传递系统参数 与 main函数参数 顺序
    packagecom.liyao.runner;/***用法:java[-options]class[args...]*(执行类)*或java[-options]-jarjarfile[args...]*(执行ja......
  • JAVA四大核心函数式接口
    Consumer接口1.接口说明Consumer接口是消费性接口,无返回值。Java8中对Consumer的定义如下所示。@FunctionalInterfacepublicinterfaceConsumer<T>{voidaccep......
  • 温故而知新——Java双列集合Map&Stream流
    总体目录:01-双列集合的特点02-Map集合常用的APIMap是顶层接口,常用方法如下:size()、isEmpty()、clear()方法容易理解;put()方法的细节:如果第一次添加元素,返回值为null......
  • vm ware 安装 ubuntu server linux
    在:https://ubuntu.com/download/server中下拉找到“UbuntuServer20.04LTS”,下载ISO. 在VMWARE中,如果鼠标和键盘被虚拟机占用,想切回主机,记得按CTRL+ALT 。 ......
  • 基于OpenJDK Alpine制作日常java基础镜像
    Dockerfile内容如下:FROMeclipse-temurin:8-jre-alpineMAINTAINERdevops(devops@example.com)RUNapkupdate&&apk--no-cacheaddtzdatattf-dejavufontconfig......
  • 2.linux下安装软件
    ubuntu下常用有的安装方式有哪些呢?rpm软件包,手动安装,需要解决依赖关系,很烦,不推荐apt自动化安装,自动处理依赖关系,很好用,推荐源代码安装,可以自定义,如安装目录等 1.ap......