【问题标题】:undefined method `method=' in airbrake with errbit带有errbit的airbrake中未定义的方法`method ='
【发布时间】:2013-04-03 13:01:22
【问题描述】:

当我执行 rake airbrake:test 时,我在生产中遇到了这个异常。 Errbit 应用程序托管在 heroku 上,并且不接收来自生产的任何消息。问题是什么?

Airbrake v 3.1.8

Errbit v - 最后来自 github

undefined method `method=' for #<BacktraceLine:0x00000005a0d160>

app/models/backtrace.rb:27:in `new'
app/models/backtrace.rb:27:in `block in raw='
app/models/backtrace.rb:26:in `each'
app/models/backtrace.rb:26:in `raw='
app/models/backtrace.rb:18:in `new'
app/models/backtrace.rb:18:in `find_or_create'
app/models/error_report.rb:33:in `backtrace'
app/models/error_report.rb:40:in `generate_notice!'
lib/overrides/hoptoad_notifier/hoptoad_notifier.rb:18:in `send_notice'

【问题讨论】:

  • 请提供更多信息。您使用什么版本的 Airbrake 和 Errbit?发布完整的错误消息。
  • 已更新,我认为这不是 errbit 问题,因为生产无法向工作中的 errbit 发送通知。
  • hoptoad_notifier.rb 在堆栈跟踪的底部是一个Errbit filebacktrace.rberror_report.rb 模型也是 Errbit files
  • 嗯,但生产没有 Errbit。只有空气制动宝石。我很困惑。
  • bundle show | grep airbrake 的输出是什么?

标签: ruby-on-rails exception deployment error-handling errbit


【解决方案1】:

这是 Errbit 中的 known issue,由 3.1.8 之后 Airbrake 的更改引起。

fix 已在 7 天前提交给 Errbit 的unnamed branch(截至撰写本文时)。

从未命名的分支重新安装 Errbit,或手动实施更改。或者等到修复程序进入 Errbit 中继,然后按照 Errbit 自述文件中的说明进行升级。

或者,您可以降级到旧版本的 Airbrake。版本 3.1.8 does not contain 重大更改。我通过在我的机器上安装 Airbrake 3.1.8 并检查文件来验证这一点。把它放在你的 Gemfile 中,然后运行 ​​bundle install:

gem "airbrake", "3.1.8"

编辑:

由于您可以验证使用的是兼容版本的 Airbrake,请查看 Errbit。

在当前Errbit中继中,BacktraceLine#method=(source)是Mongoid提供的接口。未定义的方法错误意味着 Mongoid 在运行时未提供该方法。您的测试环境中的 Mongoid 可能存在初始化或配置问题。

编辑 2:

原来这个错误是由于安装了 Errbit 没有 Mongoid,这是 Errbit 需要的。

Errbit 使用返回 Errbit 的挂钩覆盖 Airbrake 通知程序 gem,因此 使用 Airbrake 会无意中调用 Errbit。没有 Mongoid,Errbit 就会失败。

有两种解决方案:

或者...

  • 完全实现 Errbit 并使用它。

【讨论】:

  • 你确定吗? bundle show | grep airbrake 的输出是什么?
  • 生产中 * airbrake (3.1.8)
  • 生产环境或errbit存储在哪里?
  • 测试失败的地方。
  • 生产中。但它没有mongoid。干什么用的?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多