首页 > 其他分享 >lnmp状态监控自动重启服务脚本sh

lnmp状态监控自动重启服务脚本sh

时间:2024-03-20 21:44:32浏览次数:14  
标签:etc 重启 lnmp nginx init sh ### restart

#!/bin/bash
###获取当前时间
time="$(date +"%Y%m%d-%H:%M")"
###查看fpm服务是否运行
i=`netstat -an | grep php-cgi | wc -l`
if [ $i = 0 ]
        then
               ###重启php服务
               /etc/init.d/php-fpm restart
               ### 写入日志
               echo "$time php-fpm service is down .... restart..." >> /home/checkfail-lnmp.log
fi
###查看mysql服务是否运行
i=`netstat -anpt | grep mysqld | awk '{print $4}' | awk -F: '{print $2}' | wc -l`
if [ $i = 0 ]
        then
               ### 重启mysql服务
               /etc/init.d/mysql restart
               ### 写入日志
               echo "$time mysqld service is down .... restart..." >> /home/checkfail-lnmp.log
fi
###查看nginx服务是否运行
i=`netstat -anpt | grep nginx | awk '{print $4}' | awk -F: '{print $2}' | wc -l`
if [ $i = 0 ]
        then
               ### 重启nginx服务
               /etc/init.d/nginx restart
               ### 写入日志
               echo "$time nginx service is down .... restart..." >>  /home/checkfail-lnmp.log
fi

如果要监控url是否是200:

## 判断状态码是否为200
url=https://yourdomain.com
i=$(curl -I -m 10 -o /dev/null -s -w %{http_code} $url)
if [ $i -ne 200 ]; then
                 /etc/init.d/mysql restart
                 /etc/init.d/nginx restart
                 /etc/init.d/php-fpm restart
                 echo " $time 监测页: $url 状态码: $i 行为: 异常&重启" >> /home/checkfail-lnmp.log
fi

脚本添加执行权限:chmod a+x /root/checklnmp.sh

crontab每分钟检查一次:

*/1 * * * * bash /root/checklnmp.sh

 

标签:etc,重启,lnmp,nginx,init,sh,###,restart
From: https://www.cnblogs.com/prefertea/p/18086169

相关文章

  • Ubuntu 22.04 开启root账户ssh登录
    1.设置root账户密码sudopasswdroot按照提示输入密码及二次确认:至此已经可以本地登录root账号了。 2.开启root账户远程ssh登录sudosed-i's/#PermitRootLoginprohibit-password/PermitRootLoginyes/'/etc/ssh/sshd_configsudosystemctlrestartssh ......
  • hashlib模块
    hashlib模块importhashlib一堆加密算法的集合体,哈希算法的加密方式不止一种哈希算法也叫摘要算法,相同的数据始终得到相同的输出,不同的数据得到不同的输出。哈希将不可变的任意长度的数据,变成具有固定长度的唯一值字典的键和集合的值是通过哈希计算存储的,存储的数据......
  • geoserver之shp图层标注样式
    geoserver之shp图层标注样式sld代码由udig生成。sld代码:<?xmlversion="1.0"encoding="GBK"?><sld:StyledLayerDescriptorxmlns="http://www.opengis.net/sld"xmlns:sld="http://www.opengis.net/sld"xmlns:gml="http://www.......
  • linux 中shell脚本中遇到 Runtime error (func=(main), adr=22): Divide by zero
    在Linux中编写Shell脚本时,遇到“Runtimeerror(func=(main),adr=22):Dividebyzero”这样的错误通常是因为在脚本中进行了除以零的操作,类似于编程语言中的除零错误。要解决这个问题,您需要检查Shell脚本中涉及到除法运算的地方,确保分母不为零。下面是一个示例S......
  • zsh、bash以及.zprofile, .zshrc和.zshenv
    1.zsh和bash   两种不同的shell解释工具。zsh可以看成是bash的升级版。2. .zprofile,.zshrc和.zshenv经常需要在这些文件里面设置环境变量或执行shell命令。相关文件和具体作用如下:~/.zprofile  ~/.zprofile是这些启动文件和关机文件中的一个.它在登录时被读取.......
  • Photoshop2024(PS)和Lightroom(LR)设计的智能磨皮插件Portraiture下载
     打造完美肤质,PortraiturePS/LR专用智能磨皮插件让你的照片焕发魅力副标题:让你的照片告别粗糙皮肤和毛孔,展现自然细腻的肤质在摄影后期处理中,给照片进行磨皮和肤质优化是一项必不可少的步骤。而今天,我们为你带来了一款专为Photoshop(PS)和Lightroom(LR)设计的智能磨皮插件——......
  • bash -n -x -v -xv 语法检查 进行调试
    前言全局说明一、-n选项:语法检查脚本写完之后,最为简单的语法检查,比如缺少引号等,夹杂在大量的内容之中就很难定位,这时使用-n参数则可以初略地进行检查二、-x选项:调试如果想知道每步变量在执行时的值和执行的路径,则可以使用-x选项。每一条可执行脚本命令前都会有一个“......
  • 用Compute Shader处理图像数据后在安卓机上不能正常显示渲染纹理
    1)用ComputeShader处理图像数据后在安卓机上不能正常显示渲染纹理2)折叠屏适配问题3)Prefab对DLL中脚本的引用丢失4)如何优化UnityVolumeManager中的ReplaceData这是第378篇UWA技术知识分享的推送,精选了UWA社区的热门话题,涵盖了UWA问答、社区帖子等技术知识点,助力大家更全面地掌握......
  • 利用ssh隧道提升 feign 调用开发效率
    问题描述springcloud架构下,微服务间很多是通过feign进行调用的。作为一家小公司,很多微服务在开发环境没有部署实例,这就导致,想在本地做开发调试,要花精力起很多依赖服务。耗时费力。解决办法1、利用ssh隧道,让办公网可以访问测试环境(阿里云、默认不开放端口)的微服务。ssh-f......
  • 并发的NLJOIN导致Hash bucket group latch竞争
    并发的NLJOIN导致Hashbucketgrouplatch竞争https://www.ibm.com/support/pages/node/296563TroubleshootingProblem并发运行执行计划里面有NLJOIN的SQL导致了Hashbucketgrouplatch的竞争,性能降低。Symptomdb2pd-latch输出能看到大量SQLO_LT_SQLB_H......