21st Sat
MerbのCacheのHit/Missをログに出力する
MerbのCacheはなかなか優れた設計なので面白いのですが、
開発中にログにCache Miss/Hitの具合が分かるように出力してほしかったので、
development環境用のLoggingMemcachedStoreというのを書いてみました。
ruby>>
class LoggingMemcachedStore < Merb::Cache::MemcachedStore
include Extlib::Hook
before :read do |key, params|
if exists?(key, params)
Merb.logger.debug "Cache Hit: #{key}"
else
Merb.logger.debug "Cache Miss: #{key}"
end
end
before :write do |key, data, params, conds|
Merb.logger.debug "Cache Write: #{key}"
end
end
<<--
こんな感じでログに出ます。
pre>>
merb : worker (port 4000) ~ Cache Hit: Plugins#show
merb : worker (port 4000) ~ Cache Write: Plugins#show
<<--
posted by
genki on Sat 21 Feb 2009 at 01:19 with 0 comments