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
```