Class: VidazingLogger::LoggerBuilder
- Inherits:
-
Object
- Object
- VidazingLogger::LoggerBuilder
- Defined in:
- lib/vidazing_logger/logger_builder.rb
Overview
Select where the logger will write to
Instance Attribute Summary collapse
-
#logger ⇒ Logging.logger
readonly
The resulting builder logger object.
Class Method Summary collapse
-
.build(name:) {|builder| ... } ⇒ Logging.logger
Create a new LoggerBuilder.
Instance Method Summary collapse
-
#add_build_log(log_dir:) ⇒ Object
Adds a VidazingLogger::Appender::BuildLog.
-
#add_error_log(log_dir:) ⇒ Object
Adds a VidazingLogger::Appender::ErrorLog Writes to
log_dir
/error.log. -
#add_stderr ⇒ Object
Outputs log messages to STDERR.
-
#add_stdout ⇒ Object
Outputs log messages to STDOUT.
-
#initialize(name:) ⇒ LoggerBuilder
constructor
Sets up the underlying Logging.logger reference.
Constructor Details
#initialize(name:) ⇒ LoggerBuilder
Sets up the underlying Logging.logger reference.
44 45 46 47 48 49 50 51 |
# File 'lib/vidazing_logger/logger_builder.rb', line 44 def initialize(name:) # Create a logger before any appenders # Avoids a situation where Filters::Normal levels are nil # # Logging::Filters::Level.new bug: # @filter has nil levels set on the first invocation @logger = Logging.logger[name] end |
Instance Attribute Details
#logger ⇒ Logging.logger (readonly)
The resulting builder logger object
29 30 31 |
# File 'lib/vidazing_logger/logger_builder.rb', line 29 def logger @logger end |
Class Method Details
.build(name:) {|builder| ... } ⇒ Logging.logger
Create a new LoggerBuilder
35 36 37 38 39 |
# File 'lib/vidazing_logger/logger_builder.rb', line 35 def self.build(name:) builder = new(name: name) yield(builder) builder.logger end |
Instance Method Details
#add_build_log(log_dir:) ⇒ Object
Adds a VidazingLogger::Appender::BuildLog. Writes to log_dir
/build.log
78 79 80 81 |
# File 'lib/vidazing_logger/logger_builder.rb', line 78 def add_build_log(log_dir:) appender = Appenders::BuildLog.new(log_dir: log_dir) add_log(vidazing_appender: appender) end |
#add_error_log(log_dir:) ⇒ Object
Adds a VidazingLogger::Appender::ErrorLog Writes to log_dir
/error.log
88 89 90 91 |
# File 'lib/vidazing_logger/logger_builder.rb', line 88 def add_error_log(log_dir:) appender = Appenders::ErrorLog.new(log_dir: log_dir) add_log(vidazing_appender: appender) end |
#add_stderr ⇒ Object
Outputs log messages to STDERR
66 67 68 69 70 71 |
# File 'lib/vidazing_logger/logger_builder.rb', line 66 def add_stderr appender = Appenders::Stderr.new logging_appender_type = Appenders::Type::ID_STDERR add_logging_appender(logging_appender_type, vidazing_appender: appender) end |
#add_stdout ⇒ Object
Outputs log messages to STDOUT
56 57 58 59 60 61 |
# File 'lib/vidazing_logger/logger_builder.rb', line 56 def add_stdout appender = Appenders::Stdout.new logging_appender_type = Appenders::Type::ID_STDOUT add_logging_appender(logging_appender_type, vidazing_appender: appender) end |