class method self.logger_outputs_to?

Ruby on Rails 8.0.4

Since v4.2.9

Available in: v4.2.9 v5.2.8.1 v6.0.6 v6.1.7.10 v7.0.10 v7.1.6 v7.2.3 v8.0.4 v8.1.2

Signature

self.logger_outputs_to?(logger, *sources)

Returns true if the logger destination matches one of the sources

logger = Logger.new(STDOUT)
ActiveSupport::Logger.logger_outputs_to?(logger, STDOUT)
# => true

logger = Logger.new('/var/log/rails.log')
ActiveSupport::Logger.logger_outputs_to?(logger, '/var/log/rails.log')
# => true

Parameters

logger req
sources rest
Source
# File activesupport/lib/active_support/logger.rb, line 20
    def self.logger_outputs_to?(logger, *sources)
      loggers = if logger.is_a?(BroadcastLogger)
        logger.broadcasts
      else
        [logger]
      end

      logdevs = loggers.map { |logger| logger.instance_variable_get(:@logdev) }
      logger_sources = logdevs.filter_map { |logdev| logdev.try(:filename) || logdev.try(:dev) }

      normalize_sources(sources).intersect?(normalize_sources(logger_sources))
    end

Defined in activesupport/lib/active_support/logger.rb line 20 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActiveSupport::Logger

Type at least 2 characters to search.

↑↓ navigate · open · esc close