rails:Exceptional和Hoptoad扩展Rails异常监控

  异常监控通常是件重要而棘手任务而Rails插件ExceptionNotier通过提供个mailer对象和组在Rails应用发生时发送邮件提醒缺省模版让这切变得更加容易 两家公司(Exceptional和Hoptoad)则更进提供了个第 3方服务来拦截异常并将其显示在web形式界面上当然用户也可以选择继续使用通过邮件或短消息传统通知方式

  我们采访了Exceptional公司Eoghan McCabe和Hoptoad公司Matt Jankowski

  两家技术顾问公司想法来自于所从事对于内部以及外部Rails应用维护经验:

  Hoptoad - 在过去 6个月中我们已经在所维护很多公司内部和客户应用中使用这服务并且很高兴得看到我们异常捕获服务从开始到现在直在不断完善壮大

  Eoghan则代表Expceptional发言:

  Exceptional - 在我们为客户构造应用时我们非常重视监控性能、负载和异常长时间以来我们直在使用ExceptionNotier和 Logged_Exceptions插件它们确实非常有用但我们希望能扩展这些插件以使得它们能更好适应我们工作环境我们想避免通知手段 唯而造成邮件泛滥使我们能够通过多种方式获取通知通过协作查研异常从整体上对我们所管理所有应用中出现异常有足够控制力

  Exceptional和Hoptoad都推出不久(Exceptional仍处于beta版阶段)这两个服务都在不断推出新功能从正式发布以来Hoptoad已经捕获了超过300000个外部应用异常

  从技术方面Eoghan列出了Exceptional所使用Rails插件:

  UltraSphinx – 提供了非常稳定搜索索引

  WillPaginate – 几乎所有Rails工程都需要这插件

  hubahuba – 为基本类提供了令人称道扩展

  rspec

  Matt也列出了Hoptoad所使用插件列表:

  个原始Rails应用(如果我们要考虑规模问题我们会将“捕获部分”和应用其他部分相分离并且/或增加服务器)

  Hoptoad自己开发测试工具(shoulda + factory girl)

  Intrideasubdo_fu插件以及DHHopenid插件

  为整个应用使用Firstly HAML

  EngineYard提供部署托管

  在安装后Exceptional或Hoptoad后应用中异常将会被拦截下来并报告给Exceptional界面您可以根据自己偏好决定Exceptional界面具体形式比如Email通知或手机短消息(短消息这功能只有Exceptional提供)异常发生路径会被自动追踪其状态也可以转换为“已解决”“已关闭”或“已忽略”



  Hoptoad

  当被问及相对于竞争对手其各自应用有什么killer级特性时 2者回答看起来有些类似

  Eoghan给出了Exceptional些看起来优于Hoptoad特性:   Exceptional所专有特性重要性已经被我们用户所验证包括注释和Lighthouse集成和Campfire集成短消 息通知等我们还可以处理404类异常并计划提供个比较优雅界面来管理这类异常而Hoptoad则会忽略404类异常正如 ExceptionNotier那样

  此外Exceptional专注于服务Rails应用而Hoptoad则并不特定于某种框架:

  我们专注于Rails所以我们可以让我们服务更加贴近Rails帮助Rails应用开发者解决他们特定问题  这两个服务都是免费

  在Web应用中您打算如何处理异常和异常通知呢?

Tags:  rubyonrails教程 rubyrails rubyonrails rails

延伸阅读

最新评论

发表评论