class method
self.subscribe
Ruby on Rails 8.1.2
Since v3.0.20Signature
self.subscribe(pattern = nil, callback = nil, &block)
Subscribe to a given event name with the passed block.
You can subscribe to events by passing a String to match exact event names, or by passing a Regexp to match all events that match a pattern.
If the block passed to the method only takes one argument, it will yield an Event object to the block:
ActiveSupport::Notifications.subscribe(/render/) do |event| @event = event end
Otherwise the block will receive five arguments with information about the event:
ActiveSupport::Notifications.subscribe('render') do |name, start, finish, id, payload| name # => String, name of the event (such as 'render' from above) start # => Time, when the instrumented block started execution finish # => Time, when the instrumented block ended execution id # => String, unique ID for the instrumenter that fired the event payload # => Hash, the payload end
Raises an error if invalid event name type is passed:
ActiveSupport::Notifications.subscribe(:render) {|event| ...}
#=> ArgumentError (pattern must be specified as a String, Regexp or empty)
Parameters
-
patternopt = nil -
callbackopt = nil -
blockblock
Source
# File activesupport/lib/active_support/notifications.rb, line 244
def subscribe(pattern = nil, callback = nil, &block)
notifier.subscribe(pattern, callback, monotonic: false, &block)
end
Defined in activesupport/lib/active_support/notifications.rb line 244
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveSupport::Notifications