command:啓動程序使用的命令,可以是絕對路徑或者相對路徑
process_name:一個python字符串表達式,用來表示supervisor進程啓動的這個的名稱,默認值是%(program_name)s
numprocs:Supervisor啓動這個程序的多個實例,如果numprocs>1,則process_name的表達式必須包含%(process_num)s,默認是1
numprocs_start:一個int偏移值,當啓動實例的時候用來計算numprocs的值
priority:權重,可以控制程序啓動和關閉時的順序,權重越低:越早啓動,越晚關閉。默認值是999
autostart:如果設置爲true,當supervisord啓動的時候,進程會自動重啓。
autorestart:值可以是false、true、unexpected。false:進程不會自動重啓,unexpected:當程序退出時的退出碼不是exitcodes中定義的時,進程會重啓,true:進程會無條件重啓當退出的時候。
startsecs:程序啓動後等待多長時間後才認爲程序啓動成功
startretries:supervisord嘗試啓動一個程序時嘗試的次數。默認是3
exitcodes:一個預期的退出返回碼,默認是0,2。
stopsignal:當收到stop請求的時候,發送信號給程序,默認是TERM信號,也可以是 HUP, INT, QUIT, KILL, USR1, or USR2。
stopwaitsecs:在操作系統給supervisord發送SIGCHILD信號時等待的時間
stopasgroup:如果設置爲true,則會使supervisor發送停止信號到整個進程組
killasgroup:如果設置爲true,則在給程序發送SIGKILL信號的時候,會發送到整個進程組,它的子進程也會受到影響。
user:如果supervisord以root運行,則會使用這個設置用戶啓動子程序
redirect_stderr:如果設置爲true,進程則會把標準錯誤輸出到supervisord後臺的標準輸出文件描述符。
stdout_logfile:把進程的標準輸出寫入文件中,如果stdout_logfile沒有設置或者設置爲AUTO,則supervisor會自動選擇一個文件位置。
stdout_logfile_maxbytes:標準輸出log文件達到多少後自動進行輪轉,單位是KB、MB、GB。如果設置爲0則表示不限制日誌文件大小
stdout_logfile_backups:標準輸出日誌輪轉備份的數量,默認是10,如果設置爲0,則不備份
stdout_capture_maxbytes:當進程處於stderr capture mode模式的時候,寫入FIFO隊列的最大bytes值,單位可以是KB、MB、GB
stdout_events_enabled:如果設置爲true,當進程在寫它的stderr到文件描述符的時候,PROCESS_LOG_STDERR事件會被觸發
stderr_logfile:把進程的錯誤日誌輸出一個文件中,除非redirect_stderr參數被設置爲true
stderr_logfile_maxbytes:錯誤log文件達到多少後自動進行輪轉,單位是KB、MB、GB。如果設置爲0則表示不限制日誌文件大小
stderr_logfile_backups:錯誤日誌輪轉備份的數量,默認是10,如果設置爲0,則不備份
stderr_capture_maxbytes:當進程處於stderr capture mode模式的時候,寫入FIFO隊列的最大bytes值,單位可以是KB、MB、GB
stderr_events_enabled:如果設置爲true,當進程在寫它的stderr到文件描述符的時候,PROCESS_LOG_STDERR事件會被觸發
environment:一個k/v對的list列表
directory:supervisord在生成子進程的時候會切換到該目錄
umask:設置進程的umask
serverurl:是否允許子進程和內部的HTTP服務通訊,如果設置爲AUTO,supervisor會自動的構造一個url