supervisor用于linux系统中的后台管理, 须要注意的是, supervisor能够用于python2.4+环境,可是不适用于任何python3.x环境。python
supervisor的配置文件在官方文档中有详细说明,配置文件中以;标识注释块。 配置文件格式知足python parseconfig模块的格式要求。 这里主要一些本身比较感兴趣的配置模块:linux
1. iner_http_server模块能够设置supervisor的web服务模块,能够经过网页来对进程进行管理。 web
[iner_http_server]shell
port=0.0.0.0:9001python3.x
username=testapp
password=test spa
2. [program:test]通常单独放在xxx.conf文件中,并防止在/etc/supervisor/conf.d/文件夹中,这个能够参见/etc/supervisor/supervisord.conf中的files设定rest
[program: test]code
command=xxxxxxxx ;若是有多条命令,能够写入shell脚本再在这里调用server
directory=xxxxx ;执行命令是切换到的目录
user=xxxx ;执行命令所用的linux用户身份
autorestart=true ;是否自动重启
autostart=true ;启动supervisor时是否自行启动该程序
redirect_stderr=true ;若是为true则将stderr发送到stdout相应的log文件中去
stdout_logfile=/path/to/logfile ;制定stdout的输出文件
stdout_logfile_maxbytes=10MB ;限定logfile的大小, 默认为50M
stdout_logfile_backups=10 ;保存logfile的最大数目,若是操做这个数目则对最先的logfile进行覆盖,默认为10
environment=A="1", B="2" ;设置环境变量,这里能够保存运行程序须要的参数
若是所用的python是在虚拟环境中,则经过which python获取python命令的全名进行使用便可.
修改完配置文件后须要从新加载和重启服务: