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
41 42 43 |
# File 'lib/hoodie/logging.rb', line 41 def demodulize(class_name_in_module) class_name_in_module.to_s.sub(/^.*::/, '') end |
.included(base) ⇒ Object
72 73 74 75 76 77 78 79 |
# File 'lib/hoodie/logging.rb', line 72 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
45 46 47 |
# File 'lib/hoodie/logging.rb', line 45 def log(prefix) @loggers[prefix] ||= logger_for(prefix) end |
.log=(log) ⇒ Object
59 60 61 |
# File 'lib/hoodie/logging.rb', line 59 def log=(log) @log = log end |
.log_level ⇒ Object
67 68 69 |
# File 'lib/hoodie/logging.rb', line 67 def log_level "Logger::#{Hoodie.configuration.level.to_s.upcase}" end |
.logger ⇒ Object
63 64 65 |
# File 'lib/hoodie/logging.rb', line 63 def logger Hoodie.configuration.logging ? Logger.new($stdout) : NoLogger.new end |
.logger_for(prefix) ⇒ Object
49 50 51 52 53 54 55 56 57 |
# File 'lib/hoodie/logging.rb', line 49 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
27 28 29 |
# File 'lib/hoodie/logging.rb', line 27 def demodulize(class_name_in_module) class_name_in_module.to_s.sub(/^.*::/, '') end |
#log ⇒ Object
81 82 83 84 |
# File 'lib/hoodie/logging.rb', line 81 def log prefix = self.class == Class ? self.to_s : self.class.to_s Hoodie::Logging.log(demodulize(prefix)) end |