Skip to content

Instantly share code, notes, and snippets.

@nikushi
Last active December 15, 2015 20:18
Show Gist options
  • Save nikushi/5317121 to your computer and use it in GitHub Desktop.
Save nikushi/5317121 to your computer and use it in GitHub Desktop.
How to create a logger and integrate a logger with your app
# encoding: utf-8
class Bootstrap # <- example
def logger(name, level = 'debug')
if development?
STDOUT.sync = true
Logger.new(STDOUT).tap do |logger|
logger.formatter = proc do |level, _, _, message|
"[#{level}] #{message}\n"
end
end
else
Logger::Syslog.new(name).tap do |logger|
logger.formatter = Logger::SyslogFormatter.new
logger.level = eval("Logger::#{level.upcase}")
end
end
end
end
class App
# snip .. here codes of App class
def self.logger=(logger)
@@logger = logger
end
def self.logger
@@logger
end
end
App.logger = Bootstrap.logger('my_app')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment