supervisor的配置與使用


supervisor用於linux系統中的后台管理, 需要注意的是, supervisor可以用於python2.4+環境,但是不適用於任何python3.x環境。

supervisor的配置文件在官方文檔中有詳細說明,配置文件中以;標識注釋塊。 配置文件格式滿足python parseconfig模塊的格式要求。 這里主要一些自己比較感興趣的配置模塊:

1. iner_http_server模塊可以設置supervisor的web服務模塊,可以通過網頁來對進程進行管理。 

[iner_http_server]

port=0.0.0.0:9001

username=test

password=test 

2. [program:test]一般單獨放在xxx.conf文件中,並防止在/etc/supervisor/conf.d/文件夾中,這個可以參見/etc/supervisor/supervisord.conf中的files設定

[program: test]

command=xxxxxxxx  ;如果有多條命令,可以寫入shell腳本再在這里調用

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命令的全名進行使用即可.

 

修改完配置文件后需要重新加載和重啟服務:

1  sudo supervisorctl reread
2  sudo supervisorctl reload
3   sudo  supervisorctl start app  # 如果沒有設置自動啟動 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM