linux 进程监控软件 supervisor
2017年8月21日 17:51:33 星期一
supervisor python写的, 用来监控进程是否启动,
之前监控进程是否启动, 没有就拉起的shell代码是写在crontab里的, 这个软件提供了配置管理功能
参考文章:
配置1: http://www.cnblogs.com/lianer/p/5560922.html
配置2: http://www.cnblogs.com/shijingjing07/p/6024066.html
//=======安装======//
下载python安装器: https://pypi.python.org/pypi/setuptools
python 2.6/2.7 安装"安装器": http://blog.csdn.net/ab198604/article/details/8681851 (注, centos 6.x yum默认是python 2.6, 安装命令 python setup.py install, 升级pytho 2.7后yum会不可用)
官方安装指导: http://www.supervisord.org/installing.html
官方配置文件解释: http://www.supervisord.org/configuration.html
//=======配置翻译=======//
[program:x]
冒号紧跟在program后边
x是应用的名字, 也被supervisor的相关控制命令来使用;x值不能为空, 也不能含有冒号和括号;x的值还用于%(program_name)s表达式
如果x=foo且指令numprocs=3, process_name=%(program_name)s_%(process_num)02d 那么就会启动3个进程, 名字分别为foo_01,foo_02,foo_03;
如果不指定这几个值,那么就启动一个进程, 名字为x
命令 | 是否必须 | 默认值 | 解释 |
command | y | 要执行、监控的命令 | |
process_name | n | %(program_name)s | 启动后进程名, 常结合numprocs指令值使用 |
numprocs | n | 1 | 启动进程数 |
numprocs_start | n | 0 | 整数偏移量,从numprocs中的第几个开始启动 |
priority | n | 999 | 当执行start all/stop all时启动/停止的顺序, 值越小越先启动越后停止 |
autostart | n | true | supervisord启动的时候自动启动 |
startsecs | n | 1 | 启动后延迟多少秒后执行命令 |
startretries | n | 3 | 失败后重试次数 |
autorestart | n | unexpected | 重新拉起 false、unexpected(发现程序退出,根据exit_code选择性是否重启)、true(发现程序退出,则无条件重启) |
exitcodes | n | 0,2 | 配合autorestart=unexpected时使用 |
举例:
[program:activityCandleSendCouponQueue]
directory=/mnt/hostcode/openapi/basic_service
command=php7 artisan queue:work redis --queue=activityCandleSendCoupon
autorestart=true
stdout_logfile=/usr/local/supervisor/activityCandleSendCouponQueue.log
ps -ef | grep queue
www Aug23 pts/ :: php7 artisan queue:work redis --queue=activityCandleSendCoupon
linux 进程监控软件 supervisor的更多相关文章
- linux 进程监控
linux 进程监控 supervise Supervise是daemontools的一个工具,可以用来监控管理unix下的应用程序运行情况,在应用程序出现异常时,supervise可以重新启动指定程 ...
- Linux进程管理工具Supervisor的安装配置
目录 Linux进程管理工具Supervisor的安装配置 简介 安装Python包管理工具 安装Supervisor 配置 配置文件参数说明 配置进程管理 启动supervisor 控制进程 交互终 ...
- linux 进程监控和自动重启的简单实现
目的:linux 下服务器程序会因为各种原因dump掉,就会影响用户使用,这里提供一个简单的进程监控和重启功能. 实现原理:由定时任务crontab调用脚本,脚本用ps检查进程是否存在,如果不存在则重 ...
- linux 进程监控和自动重启的简单实现(转)
目的:linux 下服务器程序会因为各种原因dump掉,就会影响用户使用,这里提供一个简单的进程监控和重启功能. 实现原理:由定时任务crontab调用脚本,脚本用ps检查进程是否存在,如果不存在则重 ...
- Linux进程管理工具——supervisor
介绍 Supervisord是用Python实现的一款非常实用的进程管理工具 安装 这里用源码 supervisor-.tar.gz .tar.gz cd supervisor- sudo pytho ...
- Linux进程管理工具Supervisor
简述 Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启. 它是通过fork/exec的方式把这些被管 ...
- linux进程监控,monitor脚本
由于服务器上一些进程莫名的挂掉,需要些一个monitor的bash脚本来监控这些进程: #! /bin/bash #chkconfig info ### BEGIN INIT INFO # Provi ...
- Linux进程监控命令
最近使用centos在建站,没有用市面上的什么服务商的服务器,自己用树莓派3B+建了这个博客.但是发现经常宕机,所以想看看服务器在干什么,百度了很久,发现vmstat命令不错,拿出来推荐推荐. 这是我 ...
- linux进程监控和简单的重启&服务的创建 参考自http://blog.csdn.net/lockheed_hong/article/details/73549837
脚本文件 该脚本实现了一个检测进程是否存在,不存在的情况下重启进程并且记录日志. #! /bin/sh proc_name="console/queue/gift.php" # 进 ...
随机推荐
- CodeForces - 867E Buy Low Sell High (贪心 +小顶堆)
https://vjudge.net/problem/CodeForces-867E 题意 一个物品在n天内有n种价格,每天仅能进行买入或卖出或不作为一种操作,可以同时拥有多种物品,问交易后的最大利益 ...
- java如何调用对方http接口(II)
java如何调用接口 在实际开发过程中,我们经常需要调用对方提供的接口或测试自己写的接口是否合适,所以,问题来了,java如何调用接口?很多项目都会封装规定好本身项目的接口规范,所以大多数需要去调用对 ...
- solr简介与安装
solr简介: Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器.Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展,并对索引 ...
- 404.17 - 动态内容通过通配符 MIME 映射映射到静态文件处理程序
刚刚重装了系统,原有的ASP.NET工程下面的WebService无法运行,如下: 404.17 - 动态内容通过通配符 MIME 映射映射到静态文件处理程序 微软的提示,是做三项更改,但是我改了之后 ...
- Repeater中使用条件的两种方法
1.使用三目运算符 display=<%#(Eval("Sex", "{0}") == "01") ? "none" ...
- linux连接工具隧道模式
使用linux连接工具,比如putty,xshell可以使用隧道模式跳转登录其他服务器 A->B B->C 比如正常情况下,A主机能访问B主机,B主机能访问C主机,那么就可以设置隧道模式让 ...
- 比较好用的Copy代码到博客VS扩展工具
这个工具叫做TrimCopy,可以避免拷贝出来的代码带空格,影响布局.
- JavaSE回顾及巩固的自学之路(三)——————所有语言的都存在的基本运算
在上一篇的博客中,我回顾到Java中的关键字,标识符等知识点,而今天这篇博文将回顾Java的,哦,不,不止Java,据本人了解,几乎在所有的语言中的基础阶段,都会存在这些运算,只是语法不一样而已. 今 ...
- 20155324 2016-2017-2 《Java程序设计》第5周学习总结
20155324 2016-2017-2 <Java程序设计>第5周学习总结 教材学习内容总结 try.catch 1.求平均数程序示例 import java.util.Scanner; ...
- 新闻类App顶部菜单栏封装
概述 最近有一个需求,类似今日头条顶部的菜单栏.唯一区别是需要带可移动的下划线.网上查找资料,发现解决方案大部分是用UIScrollView实现.下方VC控制用UICollectionView.这样可 ...