supervisord
===
# 配置
```
[program:translate] #配置名稱
directory= /home/ubuntu/translate # 目錄
command = /home/ubuntu/translate/backend # 程序
autostart = true ; 在 supervisord 啟動的時候也自動啟動
startsecs = 5 ; 啟動 5 秒后沒有異常退出,就當作已經正常啟動了
autorestart = true ; 程序異常退出后自動重啟
startretries = 5 ; 啟動失敗自動重試次數,默認是 3
user = ubuntu ; 用哪個用戶啟動
redirect_stderr = true ; 把 stderr 重定向到 stdout,默認 false
stdout_logfile_maxbytes = 50MB ; stdout 日志文件大小,默認 50MB
stdout_logfile_backups = 20 ; stdout 日志文件備份數
stdout_logfile = /home/ubuntu/translate/1.log # 日志
```
# 命令
```
supervisorctl status 查看進程運行狀態
supervisorctl restart program_name 重啟
supervisorctl start program_name 進程名 啟動進程
supervisorctl stop program_name 進程名 關閉進程
supervisorctl restart 進程名 重啟進程
supervisorctl update 重新載入配置文件
supervisorctl shutdown 關閉
supervisord supervisordctl clear 進程名 清空進程日志
supervisordctl 進入到交互模式下。使用help查看所有命令。
start stop restart + all 表示啟動,關閉,重啟所有進程。
supervisorctl stop all 全部停止
supervisorctl reload 重載
```
## 重啟
```
[program:anime_es]
directory=/home/ubuntu/Anime/GO4_ES
command=/home/ubuntu/Anime/GO4_ES/PreAnimeMNT
user=ubuntu
autostart=true
stdout_logfile=/home/ubuntu/Anime/GO4_ES/logs/out.log
stderr_logfile=/home/ubuntu/Anime/GO4_ES/logs/err.log
[program:anime_es]
directory=/home/ubuntu/Anime/GO4_ES
command=/home/ubuntu/Anime/GO4_ES/PreAnimeMNT
user=ubuntu
autostart=true
stdout_logfile=/home/ubuntu/Anime/GO4_ES/logs/out.log
stderr_logfile=/home/ubuntu/Anime/GO4_ES/logs/err.log
[supervisord]
```
### file
```
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px Monaco; color: #f2f2f2; background-color: #000000; background-color: rgba(0, 0, 0, 0.85)} span.s1 {font-variant-ligatures: no-common-ligatures}
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px Monaco; color: #f2f2f2; background-color: #000000; background-color: rgba(0, 0, 0, 0.85)} span.s1 {font-variant-ligatures: no-common-ligatures}
[include]
files = /etc/supervisor/conf.d/*.conf
```