Skip to Content Skip to Search

class ActiveSupport::Notifications::Fanout::Handle

A Handle is used to record the start and finish time of event.

Both start and finish must each be called exactly once.

Where possible, it’s best to use the block form: ActiveSupport::Notifications.instrument. Handle is a low-level API intended for cases where the block form can’t be used.

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

Public instance methods

Source code GitHub
# File activesupport/lib/active_support/notifications/fanout.rb, line 250
def finish
  finish_with_values(@name, @id, @payload)
end
Source code GitHub
# File activesupport/lib/active_support/notifications/fanout.rb, line 241
def start
  ensure_state! :initialized
  @state = :started

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

Definition files