Class: Kdeploy::KdeployLogger
- Inherits:
-
Object
- Object
- Kdeploy::KdeployLogger
- Defined in:
- lib/kdeploy/logger.rb
Overview
Custom logger class for Kdeploy with colorized output
Class Attribute Summary collapse
-
.instance ⇒ Object
Returns the value of attribute instance.
Class Method Summary collapse
- .method_missing(method_name) ⇒ Object
- .respond_to_missing?(method_name, include_private = false) ⇒ Boolean
-
.setup(level: :info, file: nil) ⇒ KdeployLogger
Set up logger instance with specified level and output file.
Instance Method Summary collapse
-
#debug(message) ⇒ Object
Log debug message.
-
#error(message) ⇒ Object
Log error message.
-
#fatal(message) ⇒ Object
Log fatal message.
-
#info(message) ⇒ Object
Log info message.
-
#initialize(level: :info, file: nil) ⇒ KdeployLogger
constructor
Initialize logger with specified level and output file.
-
#warn(message) ⇒ Object
Log warning message.
Constructor Details
#initialize(level: :info, file: nil) ⇒ KdeployLogger
Initialize logger with specified level and output file
34 35 36 37 38 |
# File 'lib/kdeploy/logger.rb', line 34 def initialize(level: :info, file: nil) @logger = Logger.new(file || $stdout) @logger.level = logger_level(level) @logger.formatter = method(:format_message) end |
Class Attribute Details
.instance ⇒ Object
Returns the value of attribute instance.
7 8 9 |
# File 'lib/kdeploy/logger.rb', line 7 def instance @instance end |
Class Method Details
.method_missing(method_name) ⇒ Object
17 18 19 20 21 22 |
# File 'lib/kdeploy/logger.rb', line 17 def method_missing(method_name, ...) return super unless respond_to_missing?(method_name, false) @instance ||= new @instance.send(method_name, ...) end |
.respond_to_missing?(method_name, include_private = false) ⇒ Boolean
24 25 26 27 28 |
# File 'lib/kdeploy/logger.rb', line 24 def respond_to_missing?(method_name, include_private = false) return true if %i[debug info warn error fatal].include?(method_name) super end |
.setup(level: :info, file: nil) ⇒ KdeployLogger
Set up logger instance with specified level and output file
13 14 15 |
# File 'lib/kdeploy/logger.rb', line 13 def setup(level: :info, file: nil) @instance = new(level: level, file: file) end |
Instance Method Details
#debug(message) ⇒ Object
Log debug message
42 43 44 |
# File 'lib/kdeploy/logger.rb', line 42 def debug() @logger.debug() end |
#error(message) ⇒ Object
Log error message
60 61 62 |
# File 'lib/kdeploy/logger.rb', line 60 def error() @logger.error() end |
#fatal(message) ⇒ Object
Log fatal message
66 67 68 |
# File 'lib/kdeploy/logger.rb', line 66 def fatal() @logger.fatal() end |
#info(message) ⇒ Object
Log info message
48 49 50 |
# File 'lib/kdeploy/logger.rb', line 48 def info() @logger.info() end |
#warn(message) ⇒ Object
Log warning message
54 55 56 |
# File 'lib/kdeploy/logger.rb', line 54 def warn() @logger.warn() end |