I found this thread: How to set logging level for Rails Engines - Engines - Ruby-Forum
One commentator says:
To minimize engines polluting our logs, we just changed the logger for the engines plugin like this:
In engines.rb, update the logger method:
def logger #RAILS_DEFAULT_LOGGER Logger.new(RAILS_ROOT + "/log/engines.log") end
And then create an "engines.log" under your /log directory. Now all engines related logging will be directed to that file instead of your development.log.
My question is, how to use it then? Wouldn't it instantiate a new Logger instance every time I call it?
def some_foo_method # I want to log something, I call the logger method logger.debug("I did something") end
So, the "logger" method instantiates a new Logger instance every time. It is not good to have dozens logger instances in memory. How to avoid it? How to instantiate only once and then just use that one instance?