diff options
author | José Valim <jose.valim@gmail.com> | 2010-01-15 11:01:37 +0100 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2010-01-15 12:24:31 +0100 |
commit | 7f4d8e3fbd704cf1005a46309e3795192b114013 (patch) | |
tree | 39b65d628b46cc849086470c614b66351141cd0d /activesupport/lib | |
parent | b0994be5bd24559f1362a636b46271de6d6a92d6 (diff) | |
download | rails-7f4d8e3fbd704cf1005a46309e3795192b114013.tar.gz rails-7f4d8e3fbd704cf1005a46309e3795192b114013.tar.bz2 rails-7f4d8e3fbd704cf1005a46309e3795192b114013.zip |
Yield the payload notifications for further modification (like adding the result).
Diffstat (limited to 'activesupport/lib')
-rw-r--r-- | activesupport/lib/active_support/notifications.rb | 2 | ||||
-rw-r--r-- | activesupport/lib/active_support/notifications/instrumenter.rb | 10 |
2 files changed, 3 insertions, 9 deletions
diff --git a/activesupport/lib/active_support/notifications.rb b/activesupport/lib/active_support/notifications.rb index a1383bb478..3e96decb8c 100644 --- a/activesupport/lib/active_support/notifications.rb +++ b/activesupport/lib/active_support/notifications.rb @@ -45,7 +45,7 @@ module ActiveSupport class << self attr_writer :notifier delegate :publish, :subscribe, :to => :notifier - delegate :instrument, :instrument!, :to => :instrumenter + delegate :instrument, :to => :instrumenter def notifier @notifier ||= Notifier.new diff --git a/activesupport/lib/active_support/notifications/instrumenter.rb b/activesupport/lib/active_support/notifications/instrumenter.rb index 85c5199946..f3d877efe7 100644 --- a/activesupport/lib/active_support/notifications/instrumenter.rb +++ b/activesupport/lib/active_support/notifications/instrumenter.rb @@ -13,19 +13,13 @@ module ActiveSupport # Instrument the given block by measuring the time taken to execute it # and publish it. - def instrument(name, payload={}, add_result=false) + def instrument(name, payload={}) time = Time.now - result = yield if block_given? - payload.merge!(:result => result) if add_result + result = yield(payload) if block_given? @notifier.publish(name, time, Time.now, @id, payload) result end - # The same as instrument, but adds the result as payload. - def instrument!(name, payload={}, &block) - instrument(name, payload, true, &block) - end - private def unique_id SecureRandom.hex(10) |