记录一个在实际工作中使用的判断weblogic子节点服务是否存在脚本,如果进程正常运行,则忽略,若进程不存在则启动weblogic服务。
(1)进入weblogic启动脚本存放路径
cd /root/Oracle/Middleware/user_projects/domains/base_domain/bin
(2)编辑新建脚本
vi check_weblogic.sh
粘贴入如下内容:
#!/bin/sh
#by skyfans
weblogic_zi=`netstat -ntpl | grep 17011 | wc -l`
if [ $weblogic_zi -eq 0 ];then
sh /root/Oracle/Middleware/user_projects/domains/base_domain/bin/startWLS2.sh
echo weblogic start at >> /tmp/jilu.log
date >>/tmp/jilu.log
echo hualidefengexian------------------------------------------------------------------ >> /tmp/jilu.log
else
echo "weblogic is running bu xu yao qi dong" >> /tmp/jilu.log
date >>/tmp/jilu.log
fi
注意:脚本中的startWLS2.sh详细内容请参考:weblogic启动脚本编写–主从节点
(3)添加定时任务:
crontab 里的写法如下:
添加定时任务3分钟检查一下进程是否存在,不存在执行脚本启动服务,存在忽略:
crontab 里的写法如下:
crontab -e
添加如下内容
*/3 * * * * /root/Oracle/Middleware/user_projects/domains/base_domain/bin/check_weblogic.sh
(4)检查
–查看定时任务的执行情况日志
tail -f /var/log/cron
写在后面,大家可以按照这个思路进行修改下,变成tomcat和nginx等服务的判断内容!~~