Ruby on Rails Honeybadger集成不起作用 - 有点儿

时间:2014-09-30 11:59:51

标签: ruby-on-rails logging tracking

我将honeybadger整合到我的ruby on rails应用程序中。这一切都运作良好,并且rake测试任务按预期工作。之后我故意引起例外,以便填充“#”。仪表板,以便我可以评估外观和感觉等。但不知何故,没有跟踪错误或异常。我使用指南来安装和集成honeybadger,正如我之前提到的,rake任务引发的异常被正确跟踪。

begin
  raise('This is an error')
rescue => ex
  notify_honeybadger(ex)
end

这是我的应用程序的实际代码示例。通常honeybadger有rails中间件钩子,因此我不需要手动通知它。但即使我这样做,也根本无法跟踪。有人对我有建议吗?

最好的问候

2 个答案:

答案 0 :(得分:1)

如果您尝试在localhost上测试它,则需要将以下选项添加到honeybadger初始化程序中:

config.development_environments = %w(test)

此选项是不应发送通知的环境列表,默认情况下列表中为development env。请参阅配置选项here的详细说明。

答案 1 :(得分:1)

从Honeybadger 2.0开始,初始化程序不再被提升;在Rails 4应用程序中,您可能会收到警告

[rails console]
UPGRADE WARNING: Honeybadger.configure was removed in v2.0 and has no effect. 
Please upgrade: https://www.honeybadger.io/s/gem-upgrade

相反,Rails将使用config / honeybadger.yml

[config/honeybadger.yml]
---
api_key: 'xxxxxx'
metrics.enabled: false
development_environments: ["test", "cucumber"]

如前所述,您需要确保development_environments不包含“开发”。

使用force: true确保忽略过滤器。

[rails console]
Honeybadger.notify(Exception.new("asdf"), force: true)

如果你看到类似的东西

successful Honeybadger request

那么这应该是您的测试被发送的一个很好的指标。

验证Honeybadger控制台中的成功收据。必要时按“开发”环境过滤。

enter image description here

参考

  1. http://docs.honeybadger.io/article/41-manually-sending-exceptions-and-events
  2. http://docs.honeybadger.io/article/198-gem-configuration
  3. http://docs.honeybadger.io/article/197-upgrading-to-honeybadger-2-0