From: Gordon Thiesfeld Date: 2007-08-25T22:55:08+09:00 Subject: Re: Logging object. On Aug 25, 8:22 am, Jeremy Wells wrote: > tobyclem...@gmail.com wrote: > > Hi, > > > Can anyone suggest the best way to pass a Logger object around between > > all the classes in an application? > > > Currently I have it set in a constant in the top-level but I don't > > feel that this is the best way to do it as it couples the code in each > > of my classes to the current implementation and makes it difficult for > > me to reuse the code elsewhere without first setting up a logger > > instance of the same name. > > > Thanks, > > Toby > > Surely any way you do this if a class writes to a logger you have to set > up the logger first? But anyhow, I guess you could make a module that > provides the logging and include that on all appropriate classes: > > logging.rb: > LOG = Logger.new(...) > > module Logging > def logger > LOG || Logger.new(nil) > end > end > > something.rb: > require 'logging' > > class Something > include Logging > > def do_something > logger.info "something" > end > end