很抱歉这个广泛的问题,但我真的很想知道人们正在使用的服务组合,以便为他们的应用程序提供出色的监控。现在,我正在考虑使用Pingdom + Hoptoad(+ PagerDuty),但我想知道其他人正在使用的内容,因为几乎所有我决定的东西都有几个竞争对手。
我想知道我的应用何时无法访问,不稳定或无法播放
我想做一个基本的健全性检查,我的应用程序是好的(渲染一些东西),但不必深入(不需要为'ping'模拟登录)
我希望能够便宜且轻松地添加新内容来监控
我希望能够生成我自己的通知(现在看起来非常标准,但值得一试)
我想知道什么时候我会遇到很多例外(这里和那里奇怪的一个我愿意在早上检查,但每隔几分钟就有1个值得起床)
我想报告
需要扩展多个应用程序,跨多个节点运行的应用程序以及同一项目中的多个用户。
我见过Hoptoad vs. Exceptional次讨论。我对人们组成整个监控套件的兴趣更感兴趣。你在用什么?你喜欢它什么?你不喜欢什么?
真的很想获得建议!
答案 0 :(得分:6)
这些是我们用于监控的工具:
Monit:http://mmonit.com/monit/
对于内部和外部外部监控:apache,nginx,mongrel,mysql,sphinx,delayed_job,postfix,CPU等
每当进程发生故障时,它都会尝试启动它。如果无法启动流程,它将通知我们。
Cloudkick:https://www.cloudkick.com/
对于内部和外部外部。我们正在评估此工具。它支持rackspace,ec2,slicehost等。如果您使用多个云服务,此工具可能会对您有所帮助。
警报网格:http://alert-grid.com/
用于监控我们的cron任务。
例外通知:
错误应用程序:http://errorapp.com/ - 它的免费
Airbrake(hoptoad)http://airbrakeapp.com/pages/home
<强> Logwatch:强>
http://linuxcommand.org/man_pages/logwatch8.html - 发送有关服务器中发生的最新报告。与安装的新软件包一样,运行的cron任务列表,身份验证失败等
入侵检测:
http://www.ossec.net/
答案 1 :(得分:4)
自首次发布此问题以来,rails错误管理环境发生了很大变化。但是当我在谷歌搜索airbrake替代品时,这个线程出现了。
一些新公司已开始为rails提供错误监控服务。我们喜欢的工作是Honeybadger.io。 Paper trail在这个领域也是一项很好的服务。
答案 2 :(得分:3)
Rails中错误跟踪和监控的另一个选项是 Raygun ,位于http://raygun.io - 它具有通常的功能,如智能电子邮件通知和错误分组,但增加了良好的组织支持GitHub,Fogbugz,YouTrack等多个开发人员和集成。它也有Hipchat通知,所以当你的团队在你的聊天室看到它时会发生异常。
将ruby gem(https://rubygems.org/gems/raygun4ruby)安装并设置到项目中也很快。
答案 3 :(得分:1)
获取应用程序更新的一种好方法是使用Exception Notification。
这使您可以根据应用中发生的异常来收发电子邮件。它不是您所有信息需求的解决方案,但如果有人试图访问不存在的页面,您可以获得有关他们尝试访问的内容,他们如何访问的信息等。
答案 4 :(得分:1)
Hoptaud和Exception Notification很好,Heroku有另外一个像StillAlive一样使用的插件。
FogBugz和LightHouseApp也可以帮助你,Lighthouse可以免费使用开源。
如果您想深入参与Rails错误和通知,请阅读The Rails 3 Way书的第一章和/ environment文件夹的内容。
最好的方法仍然是BDD和TDD。计算所有重定向,添加好的404页面,使用所有阶段进行开发(开发,测试,希望升级和QA,最后只生产),然后获取通知并始终在生产之前检查日志文件。 HTH