Sha256: 3a7cded1a9a40eb9eeb7852cc2bcc659f579dc2045a7230cc4ae8548a886fafd

Contents?: true

Size: 966 Bytes

Versions: 12

Compression:

Stored size: 966 Bytes

Contents

module LogjamAgent
  module SelectiveLogging
    extend self

    mattr_accessor :selective_logging_enabled
    self.selective_logging_enabled = true

    def logjam_only
      old_selector = logjam_log_selector
      self.logjam_log_selector = :logjam_only if selective_logging_enabled
      yield
    ensure
      self.logjam_log_selector = old_selector
    end

    def logdevice_only
      old_selector = logjam_log_selector
      self.logjam_log_selector = :logdevice_only  if selective_logging_enabled
      yield
    ensure
      self.logjam_log_selector = old_selector
    end

    def logjam_log_selector
      Thread.current.thread_variable_get(:logjam_log_selector)
    end

    def logjam_log_selector=(selector)
      Thread.current.thread_variable_set(:logjam_log_selector, selector)
    end

    def logjam_only?
      logjam_log_selector == :logjam_only
    end

    def logdevice_only?
      logjam_log_selector == :logdevice_only
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
logjam_agent-0.39.1 lib/logjam_agent/selective_logging.rb
logjam_agent-0.39.0 lib/logjam_agent/selective_logging.rb
logjam_agent-0.38.5 lib/logjam_agent/selective_logging.rb
logjam_agent-0.38.4 lib/logjam_agent/selective_logging.rb
logjam_agent-0.38.3 lib/logjam_agent/selective_logging.rb
logjam_agent-0.38.2 lib/logjam_agent/selective_logging.rb
logjam_agent-0.38.1 lib/logjam_agent/selective_logging.rb
logjam_agent-0.38.0 lib/logjam_agent/selective_logging.rb
logjam_agent-0.37.1 lib/logjam_agent/selective_logging.rb
logjam_agent-0.37.0 lib/logjam_agent/selective_logging.rb
logjam_agent-0.36.0 lib/logjam_agent/selective_logging.rb
logjam_agent-0.35.1 lib/logjam_agent/selective_logging.rb