安装
$ sudo pip install supervisor
创建配置文件
$ echo_supervisord_conf > /etc/supervisord.conf
如果没有权限,则
sudo su
切换到root用户修改配置文件内容
$ sudo vim /etc/supervisord.conf
把所有的/tmp/目录修改为我个人目录,比如/home/jlong/supervisor/,在这之前先去创建这个目录:mkdir /home/jlong/supervisor写一个脚本
# -- coding:utf-8 --
#!/usr/bin/python
#file: /home/jlong/bin/test.pyprint(“This is a process”)
创建进程文件
#文件位置:/home/jlong/supervisor/conf/test.ini
[program:test]
command=/usr/bin/python /home/jlong/bin/test.py
directory=/home/jlong/bin
user=root
autostart=true ;在supervisord启动的时候也自动启动
autorestart=true ;进程挂掉后自动重启
redirect_stderr=true ;重定向输出的日志
stdout_logfile = /home/jlong/logs/test.log ;logs目录需要手动创建,不然会报错
loglevel=info ;日志级别,默认info,其它: debug,warn,trace使用include
在自己创建的目录/home/jlong/supervisor/conf下,创建.ini文件,用来管理进程的配置文件。
在/etc/supervisord.conf文件中,修改下列内容:
[include]
files = /home/jlong/supervisor/conf/*.ini启动supervisord
sudo supervisord #指定默认的配置文件/etc/supervisord.conf
sudo supervisord -c /etc/supervisord.conf #自己指定配置文件开启进程
sudo supervisorctl start program_name
或者
sudo supervisorctl命令介绍
# 停止某一个进程,program_name 为 [program:x] 里的 x
supervisorctl stop program_name
# 启动某个进程
supervisorctl start program_name
# 重启某个进程
supervisorctl restart program_name
# 结束所有属于名为 groupworker 这个分组的进程 (start,restart 同理)
supervisorctl stop groupworker:
# 结束 groupworker:name1 这个进程 (start,restart 同理)
supervisorctl stop groupworker:name1
# 停止全部进程,注:start、restart、stop 都不会载入最新的配置文件
supervisorctl stop all
# 载入最新的配置文件,停止原有进程并按新的配置启动、管理所有进程
supervisorctl reload
# 根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启
supervisorctl update
'supervisor'进程管理工具配置与使用
最新推荐文章于 2024-11-15 16:00:52 发布