Module: Lumberjack::Rails::LogSubscriberExtension
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/lumberjack/rails/log_subscriber_extension.rb
Overview
Extension for Rails log subscribers to provide Lumberjack logger integration.
This module enables Rails log subscribers (such as ActiveRecord::LogSubscriber, ActionController::LogSubscriber, etc.) to use forked Lumberjack loggers. Forked loggers provide isolation, allowing different log levels and attributes to be set for different log subscribers without affecting the main logger.
When a log subscriber’s logger is accessed, this extension checks if the parent logger supports forking. If it does, a ForkedLogger is created and cached for subsequent use. This ensures each log subscriber has its own isolated logger context.
Instance Method Summary collapse
-
#logger ⇒ Lumberjack::ForkedLogger, Logger
Get the logger for this log subscriber instance.
-
#silenced?(event) ⇒ Boolean
Override the silenced? method to check if the event has been explicitly silenced.
Instance Method Details
#logger ⇒ Lumberjack::ForkedLogger, Logger
Get the logger for this log subscriber instance.
Delegates to the class-level logger method to ensure consistent behavior across all instances of the log subscriber.
93 94 95 |
# File 'lib/lumberjack/rails/log_subscriber_extension.rb', line 93 def logger self.class.logger end |
#silenced?(event) ⇒ Boolean
Override the silenced? method to check if the event has been explicitly silenced.
83 84 85 |
# File 'lib/lumberjack/rails/log_subscriber_extension.rb', line 83 def silenced?(event) super || self.class.silenced_event?(event) end |