Supervisor使用详解

以下是起一个Supervisor进程监听一个进程的
一.
supervisor安装:https://blog.csdn.net/u013421629/article/details/79174313/

报错处理:https://blog.csdn.net/w2909526/article/details/83824890
1.用yum安装的是python2开发的supervisor,不过这一点关系都没有

脚本:
import time
time.sleep(30)
def foo():
while True:
time.sleep(10)
print(1)

foo()

注:之前一直报错,加了time.sleep(30)就没报错了

在/etc/supervisord.conf 末尾加了:
[program:test]
command=/home/cashloanadmin/bin/python3 /tmp/test.py
autostart=true
autorestart=true
stdout_logfile=/tmp/pro/test.log

3.启动命令用 supervisord -c /etc/supervisord.conf ,而不要直接运行supervisord

4.把配置文件删除是没事的,每次启动supervisor又会生成日志文件;
日志文件里面只会有print()的内容

注1:有几次报错Fatal 是因为相应的python包没装上

二.
关于配置文件详细的说明:https://www.jianshu.com/p/3e123be39255


使用Supervisor管理多个进程:起一个Supervisor进程管理多个进程

详细文章:https://www.cnblogs.com/xueweihan/p/6195824.html
https://blog.csdn.net/shudaqi2010/article/details/51153961

一.
安装完supervisord 后的配置文件默认位于:/etc/supervisord.conf
启动命令用 supervisord -c /etc/supervisord.conf ,运行这个命令就启动了一个supervisord进程用来监听别的进程
注:运行一次 supervisord -c 配置文件 就相当于起了一个supervisord 监听进程,运行多次是没必要的,因为一个supervisord进程可以监听多个别的程序进程

/etc/supervisord.conf #这是总的配置文件,这里面的[include]是用来分发的
分发的配置:
[include]
files = /etc/supervisord.d/*.conf

到时候启动Supervisor进程就只需启动这一个进程:supervisord -c /etc/supervisord.conf

在 /etc/supervisord.d 下面有各个需要管理的进程配置文件

操作Supervisor的终极版!!!!!!!!!!!:
http://oldtang.com/2477.html

一些常用的命令:

supervisorctl shutdown : 停止supervisord
supervisorctl reload : 重新加载配置文件
service supervisord status 查看状态

supervisorctl start listen #开启某个应用
supervisorctl stop listen #终止某个应用
supervisorctl update #如果增加或减少或更改了配置文件,用这个命令更新


Supervisor报错解决办法:

1.文章:https://stackoverflow.com/questions/11377385/supervisorctl-error-abnormal-termination

test FATAL command at '/tmp/test.py' is not executable

①很大可能是python的相关包没有安装上
②command=/home/cashloanadmin/bin/python3 /tmp/test.py 没有指明用哪个Python执行/tmp/test.py 文件

你可能感兴趣的:(Supervisor使用详解)