【发布时间】:2016-08-08 08:12:43
【问题描述】:
我们使用ActiveSupport 通知来记录特定的网络调用(使用 Faraday)。只在其中一种类型的调用中,当代码到达...
ActiveSupport::Notifications.subscribe(notification[:name]) do |_name, starts, ends, _, env|
handle_notification(starts, ends, env, notification[:service], env[:request_headers][notification[:header]])
end
...starts 和ends 是一样的,所以我无法计算通话时长。
这只发生在一个特定的调用上,代码基本相同。但是,我确实注意到正常工作的调用被提取到 gems 中,但不工作的调用不在 gems 中。不确定是否重要。
我该如何调试/解决这个问题?
【问题讨论】:
-
您能否检查在您生成这些通知的位置是否通过了该块?它包含所有必需的代码
-
它确实通过了,所以当我做
ActiveSupport::Notifications::Event.new(..).duration时,它等于 0.033 或类似的值,这没有意义
标签: ruby-on-rails ruby-on-rails-4 notifications activesupport