Module: Hoodie::Logging
- Defined in:
- lib/hoodie/logging.rb
Defined Under Namespace
Classes: NoLogger
Class Method Summary collapse
- .demodulize(class_name_in_module) ⇒ Object
- .included(base) ⇒ Object
- .log(prefix) ⇒ Object
- .log=(log) ⇒ Object
- .log_level ⇒ Object
- .logger ⇒ Object
- .logger_for(prefix) ⇒ Object
Instance Method Summary collapse
Class Method Details
.demodulize(class_name_in_module) ⇒ Object
42 43 44 |
# File 'lib/hoodie/logging.rb', line 42 def demodulize(class_name_in_module) class_name_in_module.to_s.sub(/^.*::/, '') end |
.included(base) ⇒ Object
73 74 75 76 77 78 79 80 |
# File 'lib/hoodie/logging.rb', line 73 def self.included(base) class << base def log prefix = self.class == Class ? self.to_s : self.class.to_s Hoodie::Logging.log(demodulize(prefix)) end end end |
.log(prefix) ⇒ Object
46 47 48 |
# File 'lib/hoodie/logging.rb', line 46 def log(prefix) @loggers[prefix] ||= logger_for(prefix) end |
.log=(log) ⇒ Object
60 61 62 |
# File 'lib/hoodie/logging.rb', line 60 def log=(log) @log = log end |
.log_level ⇒ Object
68 69 70 |
# File 'lib/hoodie/logging.rb', line 68 def log_level "Logger::#{Hoodie.configuration.level.to_s.upcase}" end |
.logger ⇒ Object
64 65 66 |
# File 'lib/hoodie/logging.rb', line 64 def logger Hoodie.configuration.logging ? Logger.new($stdout) : NoLogger.new end |
.logger_for(prefix) ⇒ Object
50 51 52 53 54 55 56 57 58 |
# File 'lib/hoodie/logging.rb', line 50 def logger_for(prefix) log = logger log.progname = prefix log.formatter = Hoodie::Formatter.new log.formatter.datetime_format = '%F %T' log.level = eval(log_level) log end |
Instance Method Details
#demodulize(class_name_in_module) ⇒ Object
28 29 30 |
# File 'lib/hoodie/logging.rb', line 28 def demodulize(class_name_in_module) class_name_in_module.to_s.sub(/^.*::/, '') end |
#log ⇒ Object
82 83 84 85 |
# File 'lib/hoodie/logging.rb', line 82 def log prefix = self.class == Class ? self.to_s : self.class.to_s Hoodie::Logging.log(demodulize(prefix)) end |