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命令的全名進行使用便可.
修改完配置文件後須要從新加載和重啓服務: