Skip to content

Instantly share code, notes, and snippets.

@tiegz
Created June 25, 2009 16:13
Show Gist options
  • Save tiegz/135947 to your computer and use it in GitHub Desktop.
Save tiegz/135947 to your computer and use it in GitHub Desktop.
def loggable(logger)
@@logger = logger
def method_missing(meth, *args)
if meth.to_s =~ /^log_/
@@logger.info "#{Time.now.to_s} - #{meth.to_s.split('_')[1..-1].join(' ')}"
else
super
end
end
end
class Something
loggable(Logger.new('log/something.log'))
def do_something
log_doing_something
# do the actual something
end
end
s = Something.new
s.do_something
# in log/something.log...
# Thu Jun 25 12:12:40 -0400 2009 - doing something
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment