跳至内容 跳至搜索

Handle 用于记录事件的开始和结束时间。

startfinish 都必须分别调用一次。

如果可能,最好使用块形式:ActiveSupport::Notifications.instrumentHandle 是一个低级 API,适用于无法使用块形式的情况。

handle = ActiveSupport::Notifications.instrumenter.build_handle("my.event", {})
begin
  handle.start
  # work to be instrumented
ensure
  handle.finish
end
方法
F
S

实例公共方法

finish()

# File activesupport/lib/active_support/notifications/fanout.rb, line 249
def finish
  finish_with_values(@name, @id, @payload)
end

start()

# File activesupport/lib/active_support/notifications/fanout.rb, line 240
def start
  ensure_state! :initialized
  @state = :started

  iterate_guarding_exceptions(@groups) do |group|
    group.start(@name, @id, @payload)
  end
end