公司服务器部署项目比较多,使用supervisor管理的守护进程也是比较多,进程出现进程异常中断的问题,需要手动一个个去重启比较麻烦,于是动手写一个脚本去批量重启这些异常中断的进程。
新建 restart_fatal_supervisord.sh 文件,内容如下:
#!/bin/bash
# 重启 多个进程的任务
supervisorctl status | grep "FATAL" | awk -F " " '{print $1}' | grep ":" | awk -F ":" '{print $1":"}' | sort | uniq | xargs | tee | xargs supervisorctl restart
# 重启 单个进程的任务
supervisorctl status | grep "FATAL" | awk -F " " '{print $1}' | grep -v ":" | sort | uniq | xargs | tee | xargs supervisorctl restart
chmod u+x restart_fatal_supervisord.sh
sh restart_fatal_supervisord.sh