Class: Hooks::Core::LoggerFactory
- Inherits:
-
Object
- Object
- Hooks::Core::LoggerFactory
- Defined in:
- lib/hooks/core/logger_factory.rb
Overview
Factory for creating structured JSON loggers
Class Method Summary collapse
-
.create(log_level: "info", custom_logger: nil) ⇒ Logger
Create a structured JSON logger.
Class Method Details
.create(log_level: "info", custom_logger: nil) ⇒ Logger
Create a structured JSON logger
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/hooks/core/logger_factory.rb', line 17 def self.create(log_level: "info", custom_logger: nil) return custom_logger if custom_logger $stdout.sync = true # don't buffer - flush immediately # Create a new logger logger = RedactingLogger.new( $stdout, # The device to log to (defaults to $stdout if not provided) redact_patterns: [], # An array of Regexp patterns to redact from the logs level: parse_log_level(log_level), # The log level to use redacted_msg: "[REDACTED]", # The message to replace the redacted patterns with use_default_patterns: true # Whether to use the default built-in patterns or not ) logger.formatter = json_formatter logger end |