Heroku上的Rails如何监视工作进程

Pat*_*arx 6 monitoring ruby-on-rails heroku production-environment tweetstream

我的Rails应用程序有一个关键的工作进程,这是Twitter提要事件上的事件机器循环(有人发推文,它会自动处理推文并根据内容运行不同的代码,也称为tweetstream gem).

我的问题是我不知道监控生产过程的正确/好方法,这样如果过程失败或工作不正常,我希望以某种方式得到通知,以便我可以尝试解决它很快.我有NewRelic gem来监视我的Web服务器,但是还不确定它是否/如何应用于工作线程.

我在找什么:

  • 确保进程本身始终在运行,否则将收到通知
  • 确保事件(接收推文)导致代码一直运行(如果在完成之前抛出错误,则会收到通知)
  • 可能确保持有一些不变量,或者如果没有则通知

我正在寻找的是正常记录器工作流程的一部分,(使用不同的日志级别?)如果是这样,确认这对我来说也很有帮助.任何建议表示赞赏,谢谢!

编辑:说NewEgg而不是NewRelic ......哎呀

CDu*_*Dub 0

后两个要求可以使用日志记录来完成,但是当事件无法在您的代码中一路运行或正在举行时,需要做一些工作才能向您发送电子邮件通知。

您可能想查看Heroku 上的NewRelic插件 - 它现在对少数 dynos 免费,并且可以在进程始终运行时提醒您,如果没有运行则通知您。