【问题标题】:Error catching, Monitoring and Notification for Rails 3? [closed]Rails 3 的错误捕获、监控和通知? [关闭]
【发布时间】:2011-09-16 23:02:23
【问题描述】:

抱歉,这个问题太笼统了,但我真的很想知道人们使用哪些服务组合来对他们的应用进行出色的监控。现在,我正在考虑使用 Pingdom + Hoptoad (+ PagerDuty),但我想知道其他人在使用什么,因为我决定的几乎所有东西都有几个竞争对手。

我想知道我的应用何时无法访问、不稳定或关闭

我想进行基本的健全性检查,以确保我的应用程序良好(呈现某些内容),但不必太深(无需模拟“ping”的登录)

我希望能够廉价且轻松地添加新的东西来监控

我希望能够生成自己的通知(现在看起来很标准,但值得一提)

我想知道我什么时候会遇到很多异常(我愿意在早上检查一下,但每隔几分钟就有 1 次是值得的)

我要举报

它需要随着多个应用程序、跨多个节点运行的应用程序以及同一项目上的多个用户进行扩展。

我看过Hoptoad vs. Exceptional 的讨论。我更感兴趣的是人们将什么组合在一起以形成他们的整个监控套件。你在用什么?你喜欢它什么?你不喜欢它的什么地方?

真的很想得到建议!

【问题讨论】:

  • 没有答案 :( 我一直在使用 uptimerobot、hoptoad、pager duty 和 new relic(免费),以及一些本土指标。当我的网站出现故障时,我会接到电话,我可以在 new relic 中看到一些指标,并在 hoptoad 上挖掘错误。也许人们可以建议这些产品的替代品?
  • 这可能是因为您已经回答了您的问题。在公司,我们使用 Nagios、Hoptoad、Monit 和 Pingdom 来确保一切正常。幸运的是,这并没有什么神奇之处,这些工具中的大多数都可以正常工作,并且您已经习惯了使用它们。我们也有一些特定的检查来查看我们的 resque 队列是否已备份,但仅此而已。
  • 我想我有点希望有更好的解决方案

标签: ruby-on-rails error-handling monitoring ping


【解决方案1】:

这些是我们用于监控的工具:

监听: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/

【讨论】:

    【解决方案2】:

    自从这个问题首次发布以来,rails 错误管理环境发生了很大变化。但是当我在谷歌搜索空气制动替代品时出现了这个线程。

    几家新公司已开始为 Rails 提供错误监控服务。我们在工作中喜欢的是Honeybadger.io。 Paper trail 在这个领域也是一个不错的服务。

    【讨论】:

      【解决方案3】:

      Rails 中错误跟踪和监控的另一个选项是 Raygun,地址为 http://raygun.io - 它具有智能电子邮件通知和错误分组等常见功能的补充,但为多个开发人员添加了良好的组织支持并集成到 GitHub、Fogbugz、YouTrack 等。它还具有 Hipchat 通知,因此当发生异常时,您的团队会在您的聊天室中看到它。

      在您的项目中安装和设置 ruby​​ gem (https://rubygems.org/gems/raygun4ruby) 也非常快。

      【讨论】:

        【解决方案4】:

        获取有关您的应用程序更新的一个绝妙方法是使用Exception Notification。

        这使您可以根据应用中发生的异常情况来接收电子邮件。它不会满足您的所有信息需求,但如果有人尝试访问不存在的页面,您可以获得有关他们尝试访问的内容、他们如何到达那里等信息。

        【讨论】:

        • 这对我们来说并不实用,因为我们正在大规模运行。当我们引入一个错误时,我们会点击它数千次。错误处理服务为我们提供了非常有价值的错误聚合。
        • 您研究过 AirBrake 吗?
        【解决方案5】:

        Hoptaud 和异常通知很好,Heroku 有另一个插件可以使用,比如 StillAlive。

        FogBugz 和 LightHouseApp 也可以帮到你,Lighthouse 是免费开源的。

        如果您想深入了解 Rails 错误和通知,请阅读 The Rails 3 Way 书的第一章和 /environment 文件夹的内容。

        最好的方式仍然是 BDD 和 TDD。制定所有重定向,添加漂亮的 404 页面,使用所有阶段进行开发(开发、测试、希望也有分期和 QA,最后才是生产),然后在进行生产之前获取通知并始终检查日志文件。高温

        【讨论】:

          猜你喜欢
          • 2014-08-06
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-01-06
          • 1970-01-01
          • 2011-05-26
          • 1970-01-01
          相关资源
          最近更新 更多