Seb*_*itz 37 monitoring logging supervisord
有什么方法supervisord
可以自动重新启动失败/退出/终止的作业并向我发送一封通知电子邮件,其中包含日志文件最后 x 行的转储?
Tho*_*aaf 52
有一个插件叫做 superlance。
您可以通过pip install superlance
以下网址安装或下载:http : //pypi.python.org/pypi/superlance
接下来你要做的是进入你的supervisord.conf
并添加以下几行:
[eventlistener:crashmail]
command=/usr/local/bin/crashmail -a -m email1@example.com
events=PROCESS_STATE
Run Code Online (Sandbox Code Playgroud)
这之后应该是“supervisorctl update”。当进程“退出”时,您现在将收到发送至 email1@example.com 的通知。
如果您只想收听某些选定的应用程序,您可以将其交换-a
为一个-p program1
或者如果它是一个组group1:program2
一个例子是
[eventlistener:crashmail]
command=/usr/local/bin/crashmail -p program1 -p group1:program2 -m email1@example.com
events=PROCESS_STATE
Run Code Online (Sandbox Code Playgroud)
关于自动重启:您应该确保将autorestart
其设置为true
(unexpected
默认设置为)。这样,包将重新启动 3 次。如果之后它仍然退出,它就会放弃,但您可以使用startretries
.
示例程序:
[program:cat]
command=/bin/cat
autorestart=true
startretries=10
Run Code Online (Sandbox Code Playgroud)