我正在开发一个在 nginx 负载均衡器后面有多个 rails 服务器的生产应用程序。我们正在使用monit监控sidekiq进程,它工作得很好——当sidekiq进程死亡时,monit会立即启动它。
然而,最近遇到了一种情况,其中一个进程正在运行并且对监视器可见,但由于某种原因对 sidekiq 不可见。这导致了许多失败的作业,并且我们花了一些时间才注意到我们在 sidekiq Web UI 中缺少一个进程,因为 monit 告诉我们一切都很好并且所有进程都在运行。简单的重启解决了这个问题。
这让我想到了我的问题:你如何监控你的 sidekiq 流程?我知道当工作失败时我可以使用类似 rollbar 的东西来通知我,但我想知道是否有一种方法可以监控进程计数,并且最好在一个死时发送邮件。有什么建议么?
可以pingsidekiq/stats
并验证响应的东西。