Nginx学习笔记3:Shell脚本检测Nginx服务状态
前言
nginx 服务启动后,我们需要对其服务状态进行监控,今天学习过程中了解到一段非常有用的小脚本,不仅可以监控Nginx,也可以用来监控其他服务
脚本
A=`ps -C nginx –no-header |wc -l`
if [ $A -eq 0 ];then/usr/local/nginx/sbin/nginxsleep 2if [ `ps -C nginx --no-header |wc -l` -eq 0 ];thenkillall keepalivedfi
fi
脚本解析
ps -C nginx –no-header
这里涉及ps 的用法,我们一般用ps查看相关进程,一般都是用
ps -ef | grep XX 或 ps -aux| grep XX 的模式
如下:
[root@bogon ~]# ps -ef | grep nginx
root 2248 1 0 19:13 ? 00:00:00 nginx: master process ./nginx
nobody 3265 2248 0 20:16 ? 00:00:00 nginx: worker process
root 4791 4742 0 22:05 pts/1 00:00:00 grep --color=auto nginx
但是这样通常都会覆盖一个grep的进程
我们可以用ps -C 或ps -c 的方式, -C 后面接命令的名字 ,如下:
[root@bogon ~]# ps -C nginxPID TTY TIME CMD4983 ? 00:00:00 nginx4984 ? 00:00:00 nginx
–no-header 就是去挑title,如下:
[root@bogon ~]# ps -C nginx --no-header4983 ? 00:00:00 nginx4984 ? 00:00:00 nginx
wc -l 这个很熟悉了,行数计算
所以用这种方式可判断,如果
ps -C nginx --no-header|wc -l
如果值为0,即代表服务未启动
如果值为非0,即代表服务已启动
还有一个知识点,killall keepalived 这个是以服务名称杀死进程,日常中也用的挺多的
举一反三
上面那段完整的脚本意思即为:
判断nginx 服务是否启动
如果未启动,执行启动命令
再次判断,如果启动失败,关掉keepalived,进入从节点
关于Nginx的主从我们后面会实操后记录
最重要的一点是,这段脚本不仅可以用来监控Nginx,其他服务也是可以的,模式是一样的,大家可以自行试试
参考连接:
Nginx学习笔记3:Shell脚本检测Nginx服务状态 : https://www.jianshu.com/p/0df46255dd1c
Nginx学习笔记3:Shell脚本检测Nginx服务状态相关推荐
- nginx 学习笔记(2) nginx新手入门
这篇手册简单介绍了nginx,并提供了一些可以操作的简单的工作.前提是nginx已经被安装到你的服务器上.如果没有安装,请阅读上篇:nginx 学习笔记(1) nginx安装.这篇手册主要内容:1. ...
- 全是精髓!也许是最完美的“Nginx学习笔记”了,阿里云高工“365”天手写!
前言 "Nginx",一个高性能的HTTP和反向代理web服务器,Nginx因为内存少.并发能力强的特性,深受虚拟机主机提供商的欢迎,可以支持高达50000个并发连接数的响应.Ng ...
- Nginx 学习笔记
Nginx 学习笔记 文章目录 Nginx 学习笔记 1.Nginx 的简介 1.1正向代理 1.2反向代理 1.3负载均衡 1.4动静分离 1.5Nginx的安装 1.6Nginx的常用命令 1.7 ...
- shell脚本使得nginx日志每天定时切割压缩
Linux下添加shell脚本使得nginx日志每天定时切割压缩 对于nginx的日志文件,特别是access日志,如果我们不做任何处理的话,最后这个文件将会变得非常庞大 这时,无论是出现异常时查日志 ...
- 学习笔记(1)centos7 下安装nginx
学习笔记(1)centos7 下安装nginx 这里我是通过来自nginx.org的nginx软件包进行安装的. 1.首先为centos设置添加nginx的yum存储库 1.通过vi命令创建一个rep ...
- 开发shell脚本检查Nginx实战分享
开发shell脚本检查Nginx实战分享 点这里查看视频讲解 一.本脚本实现功能: 1.自动检查Nginx下面的代理节点是否正常 2.通过页面显示状态,有问题的节点给出页面报警及声音报警. 3.增加新 ...
- nginx学习笔记-01nginx入门,环境搭建,常见命令
nginx学习笔记-01nginx入门,环境搭建,常见命令 文章目录 nginx学习笔记-01nginx入门,环境搭建,常见命令 1.nginx的基本概念 2.nginx的安装,常用命令和配置文件 3 ...
- 【005】Nginx学习笔记-Nginx真实IP
[005]Nginx学习笔记-Nginx真实IP 真实IP 客户端真实IP 深入理解真实IP 实验一 实验二: 多个代理服务器的情况 实验三:利用realip模块获取客户端真实IP 实验四:伪装请求头 ...
- 宝塔linux shell定时访问url,bt(宝塔)面板添加shell 脚本通过nginx日志封访问频率过高的IP...
额,这篇文章是bt(宝塔)面板来写的文章,其他的程序如果是wdcp管理面板也有添加shell脚本的功能,大鸟自己用的是bt(宝塔)面板,所以说说如何添加shell 脚本通过nginx日志封访问频率过高 ...
最新文章
- spring cloud alibaba版本选择
- php(wamp安装问题)
- github使用心得
- php 浏览器能请求post_PHP解析微视无水印播放地址原理分析
- spring boot高性能实现二维码扫码登录(中)——Redis版
- jQuery中position()与offset()区别
- 使用god来自动启动崩溃的进程
- mvc图片上传到服务器
- 【论文阅读笔记】Securing software by enforcing data-flow integrity
- 西瓜决策树-ID3算法
- 基于微信小程序的医院预约挂号系统设计与实现 毕业设计论文 课题题目参考(2)后台管理功能和界面效果
- 12306春运火车票抢票攻略——3分钟抢到热门票
- iframe框架下的子父级页面监控页面关闭事件
- java表格组件_表格组件 java
- 清华大学教授张长水:基于小样本学习的计算机视觉应用
- 问答系统概述(待续)
- 【NAS】如何利用群晖备份文件
- Android获取GPS网络定位经纬度信息
- 支付--支付宝APP支付
- JQuery EasyUI Datagrid 清空排序状态(箭头)代码
热门文章
- c fun函数求n个整数的平均值_Python语法示例——函数
- android hook 模拟点击_手把手讲解 Android Hook-实现无清单启动Activity
- poj 1330(LCA)
- 十八年开发经验分享(二)问题解决篇(上)
- uniapp ios时间戳获取不到_uni-app打包编译成安卓及ios包并上传发布测试版
- html5 渐变按钮练习
- 如何根据configure.ac和Makefile.am为开源代码产生当前平台的Makefile
- Codeforces Round #296 (Div. 2) C. Glass Carving [ set+multiset ]
- 常用的php.ini 配置选项
- symmetry methods for differential equations,exercise 1.4