aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport
diff options
context:
space:
mode:
authorSean Griffin <sean@seantheprogrammer.com>2015-10-30 09:44:54 -0600
committerSean Griffin <sean@seantheprogrammer.com>2015-10-30 09:44:54 -0600
commit6c61ae816ad7326e510a8f019cadc6db4cc9dae0 (patch)
treed03570d9227a10be2ac8e72b78ac085e002a4ac0 /activesupport
parente038975c29aa883cb9ac5472cdb0ea9319158121 (diff)
parentf654d658f2dab5f4dcc42b2d0c308b4d806dc491 (diff)
downloadrails-6c61ae816ad7326e510a8f019cadc6db4cc9dae0.tar.gz
rails-6c61ae816ad7326e510a8f019cadc6db4cc9dae0.tar.bz2
rails-6c61ae816ad7326e510a8f019cadc6db4cc9dae0.zip
Merge pull request #11872 from AvnerCohen/log_namespace
When testing cache issues, it is useful to log the actual key, including namespace
Diffstat (limited to 'activesupport')
-rw-r--r--activesupport/lib/active_support/cache.rb2
-rw-r--r--activesupport/test/caching_test.rb13
2 files changed, 14 insertions, 1 deletions
diff --git a/activesupport/lib/active_support/cache.rb b/activesupport/lib/active_support/cache.rb
index 3996f583c2..d0e53eaf05 100644
--- a/activesupport/lib/active_support/cache.rb
+++ b/activesupport/lib/active_support/cache.rb
@@ -538,7 +538,7 @@ module ActiveSupport
end
def instrument(operation, key, options = nil)
- log { "Cache #{operation}: #{key}#{options.blank? ? "" : " (#{options.inspect})"}" }
+ log { "Cache #{operation}: #{namespaced_key(key, options)}#{options.blank? ? "" : " (#{options.inspect})"}" }
payload = { :key => key }
payload.merge!(options) if options.is_a?(Hash)
diff --git a/activesupport/test/caching_test.rb b/activesupport/test/caching_test.rb
index fb52613a23..854fcce4ef 100644
--- a/activesupport/test/caching_test.rb
+++ b/activesupport/test/caching_test.rb
@@ -1086,6 +1086,19 @@ class CacheStoreLoggerTest < ActiveSupport::TestCase
assert @buffer.string.present?
end
+ def test_log_with_string_namespace
+ @cache.fetch('foo', {namespace: 'string_namespace'}) { 'bar' }
+ assert_match %r{string_namespace:foo}, @buffer.string
+ end
+
+ def test_log_with_proc_namespace
+ proc = Proc.new do
+ "proc_namespace"
+ end
+ @cache.fetch('foo', {:namespace => proc}) { 'bar' }
+ assert_match %r{proc_namespace:foo}, @buffer.string
+ end
+
def test_mute_logging
@cache.mute { @cache.fetch('foo') { 'bar' } }
assert @buffer.string.blank?