1

我在我的一台服务器上运行 supervisord。我有一个 cronjob 每隔几个小时使用 ntpdate 更新时钟,因为在 EC2 上,时钟往往会经常滞后。

我注意到当 ntpdate 命令运行时,supervisord 会经常崩溃并且必须重新启动。

我检查了 supervisord 日志,但我什么也没看到。我打开了信息级别。

有任何想法吗?

4

1 回答 1

0

我在所有 3.0、3.0a、3.0b 版本中也遇到了这个问题。有一个 100% 的重现路径:

  1. 将系统时间设置为比实时时间早 1 年。
  2. killall one_program_under_supervisoring。
  3. 你会看到 supervisord 崩溃了。

Supervisor 在计算程序状态时严重依赖系统时间,如果系统时间发生变化,状态可能是错误的,就会出现 Assertion。我做了一个解决方法(参见https://github.com/lifsong/supervisor)。

主管开发人员最好从设计角度进行改进。创建了一个问题:https ://github.com/Supervisor/supervisor/issues/281

于 2013-08-18T12:33:48.780 回答