[英]How can I get notified when Sidekiq Enqueues jobs or has stopped processing jobs?
我在Heroku上,并且由于我的Redis数据库太满而出错。 我的sidekiq进程停止工作。 直到一天我才意识到这一点。 现在,我有600多个我试图处理的工作,但现在他们正在打破一切。 当sidekiq无法处理作业或入队开始填满时,如何发出警报?
您可以按计划设置耙任务,以检查Sidekiq的统计信息,然后采取适当的操作(例如发送电子邮件)。
我已经为Sidekiq创建了带有辅助方法的自己的模块,该模块具有多种用途,例如删除作业,检查队列,按特定条件检索作业等。https: //gist.github.com/blotto/10324119
为了您的目的,请获取sidekiq统计信息,例如:
def sidekiq_stats()
summary = Hash.new
stats = Sidekiq::Stats.new
summary = { processed: stats.processed,
failed: stats.failed,
enqueued: stats.enqueued,
queues: stats.queues}
end
然后评估排队的值,对您认为过高的值设置公差,然后松开猎犬。
如果您使用zabbix进行监视,则可以在https://github.com/hungntit/sidekiq_queue_zabbix上使用sidekiq_queue_zabbix模板。 此模板支持在sidekiq队列大小大于一个指定的限制数时显示图形并发送警报
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.