在Rails应用程序中记录警告(而不是错误)并对其进行管理

我正在寻找一个良好的流程来处理Rails应用程序中的警告/信息类型消息。 例如,用户输入错误密码的次数,模型验证失败次数等等。特别是,我正在寻找一种有效的方式来操作这些指标,因为它们不是例外,但可以指示潜在的错误或功能问题。

我踢的解决方案是:

  • 记录WARNING或INFO消息并使用Splunk解析它们(不幸的是Splunk非常昂贵)
  • 在WARNING环境中发送Airbrake错误

  • 您应该看看Papertrail作为Splunk + Airbrake的替代品。 如果你只是对记录感兴趣,似乎更适合。


    另一种方法是使用StatsDLibrato (或Graphite开源替代品)配对。 StatsD (因此Librato / Graphite )通过UDP进行操作,所以它是一种非常便宜的方式,可以根据需要为失败登录或用户创建等工具提供尽可能多的工具。 您可以实现各个代码块的时间安排,以及只是说“调用此方法”。

    这是Etsy大约3年前推出的一种方法,基本上允许您在部署出错或功能无法按预期/正常工作时使用“心跳”来监视应用程序。 除此之外,这是获得简单的“执行”风格仪表板以显示所有内容都按预期工作并且应用程序健康的好方法。


    免责声明:我的公司建立,拥有并运营Instrumental。

    我们在内部使用Instrumental来跟踪错误发生的频率(我们实际上使用Instrumental来最近跟踪和压缩注册错误),并追踪其他非实际例外的问题。

    Rails的实现非常简单(我们也是Rails的人员,所以我们创建了一个Gem):

    https://github.com/fastestforward/instrumental_agent

    你只是想在你想测量的东西上添加一些工具(在这种情况下错误的密码输入或失败的验证)。

    有关测量错误,错误和其他事件的一些文档:

    https://instrumentalapp.com/docs

    链接地址: http://www.djcxy.com/p/10895.html

    上一篇: logging warnings (not errors) in a rails application, and managing them

    下一篇: Create 1 bit bitmap (monochrome) in php