我已经配置了supervisord来跟踪我的unicorn服务器进程。当我发送USR2进程时,它会执行滚动重启。在此操作之后,旧的unicorn master已经重新启动,然后更改了PID。
这导致主管认为独角兽进程已退出,从而失去了对它的追踪。
在此操作之后,我怎样才能让 Supervisord 跟踪新的独角兽进程?
Unicorn 有一个可用的 PID 文件,但我在 Supervisord 配置中没有找到这个选项。
另一种选择是让 Supervisord 向自己发送 USR2 信号,但我不知道如何执行此操作以及它是否可以防止我的问题发生。
答案1
看起来这个案子可以由pidproxy
程序。文档中的示例是:
[program:mysql]
command=/path/to/pidproxy /path/to/pidfile /path/to/mysqld_safe
据推测这对独角兽来说也可以起到同样的作用。