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
Methods
Instance Public methods
finish()
📝 Source code
# File activesupport/lib/active_support/notifications/fanout.rb, line 249
def finish
finish_with_values(@name, @id, @payload)
end
🔎 See on GitHub
start()
📝 Source code
# 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
🔎 See on GitHub