Module | PhusionPassenger::ClassicRailsExtensions::AnalyticsLogging::CacheStoreExtension |
In: |
lib/phusion_passenger/classic_rails_extensions/analytics_logging/as_cache_extension.rb
|
# File lib/phusion_passenger/classic_rails_extensions/analytics_logging/as_cache_extension.rb, line 29 29: def fetch_2_1(key, options = {}) 30: @logger_off = true 31: if !options[:force] && value = read(key, options) 32: @logger_off = false 33: log("hit", key, options) 34: PhusionPassenger.log_cache_hit(nil, key) 35: value 36: elsif block_given? 37: @logger_off = false 38: log("miss", key, options) 39: 40: value = nil 41: seconds = Benchmark.realtime { value = yield } 42: 43: @logger_off = true 44: write(key, value, options) 45: @logger_off = false 46: 47: log("write (will save #{'%.5f' % seconds})", key, nil) 48: PhusionPassenger.log_cache_miss(nil, key, seconds * 1_000_000) 49: 50: value 51: else 52: PhusionPassenger.log_cache_miss(nil, key) 53: value 54: end 55: end
# File lib/phusion_passenger/classic_rails_extensions/analytics_logging/as_cache_extension.rb, line 57 57: def fetch_2_2(key, options = {}) 58: @logger_off = true 59: if !options[:force] && value = read(key, options) 60: @logger_off = false 61: log("hit", key, options) 62: PhusionPassenger.log_cache_hit(nil, key) 63: value 64: elsif block_given? 65: @logger_off = false 66: log("miss", key, options) 67: 68: value = nil 69: seconds = Benchmark.realtime { value = yield } 70: 71: @logger_off = true 72: write(key, value, options) 73: @logger_off = false 74: 75: log("write (will save #{'%.2f' % (seconds * 1000)}ms)", key, nil) 76: PhusionPassenger.log_cache_miss(nil, key, seconds * 1_000_000) 77: 78: value 79: else 80: PhusionPassenger.log_cache_miss(nil, key) 81: value 82: end 83: end
# File lib/phusion_passenger/classic_rails_extensions/analytics_logging/as_cache_extension.rb, line 85 85: def fetch_2_3(key, options = {}) 86: @logger_off = true 87: if !options[:force] && value = read(key, options) 88: @logger_off = false 89: log("hit", key, options) 90: PhusionPassenger.log_cache_hit(nil, key) 91: value 92: elsif block_given? 93: @logger_off = false 94: log("miss", key, options) 95: 96: value = nil 97: ms = Benchmark.ms { value = yield } 98: 99: @logger_off = true 100: write(key, value, options) 101: @logger_off = false 102: 103: log('write (will save %.2fms)' % ms, key, nil) 104: PhusionPassenger.log_cache_miss(nil, key, ms * 1_000) 105: 106: value 107: else 108: PhusionPassenger.log_cache_miss(nil, key) 109: value 110: end 111: end