在 Supervisord 中发送不同的系统关闭和手动停止信号

在 Supervisord 中发送不同的系统关闭和手动停止信号

我有一组自动缩放的 EC2 实例,每个实例上运行由 Supervisord 管理的守护进程。

我想区分以下情况的清理行为:

  • 关闭实例时(例如,缩减规模)
    ,即关闭 Supervisord 本身
    -> 执行额外的清理过程
  • 当我手动停止守护进程进行维护(例如升级)时
    ,即保持supervisord处于活动状态,但仅关闭我的守护进程
    ->执行快速清理过程

目前,supervisord 仅stopsignal在两种情况下发送相同信号的配置。看起来作者决定不是支持额外的重新加载/重启信号以实现正常关机。(在我的例子中,我想区分两个关闭根据关机原因发出信号,但不希望有重新加载/重启信号。)

我怎样才能让我的守护进程区分这两种情况(有supervisord 或者没有supervisord)?

相关内容