Sha256: 6ac8661d130cac1507cf7725e8a3e17d7a36d627c2b4dc2c3c97774ace9016c0

Contents?: true

Size: 1 KB

Versions: 20

Compression:

Stored size: 1 KB

Contents

# frozen_string_literal: true

require 'bbk/utils/logger'

module BBK
  module Utils
    class ProxyLogger

      attr_reader :tags, :logger

      def initialize(logger, tags:)
        @logger = logger
        @tagged = @logger.respond_to?(:tagged)
        @tags = [tags].flatten
      end

      def add_tags(*tags)
        @tags += tags.flatten
        @tags = @tags.uniq
      end

      def method_missing(method, *args, &block)
        super unless logger.respond_to?(method)

        if @tagged
          current_tags = tags - logger.formatter.current_tags
          logger.tagged(current_tags) { logger.send(method, *args, &block) }
        else
          logger.send(method, *args, &block)
        end
      end

      def respond_to?(name, include_private=false)
        logger.send(:respond_to?, name, include_private) || super
      end

      def respond_to_missing?(method_name, include_private = false)
        logger.send(:respond_to_missing?, method_name, include_private) || super
      end

    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
bbk-utils-1.1.1.289210 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.1.1.289204 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.1.1.275386 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.1.0.274232 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.1.0.273317 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.1.0.181866 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.1.0.149110 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.0.1.147183 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.0.1.136047 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.0.1.133029 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.0.1.102369 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.0.1.100402 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.0.1.100401 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.0.1.97958 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.0.1.97943 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.0.1.93642 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.0.1.89770 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.0.1.84207 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.0.1.72916 lib/bbk/utils/proxy_logger.rb
bbk-utils-1.0.1.72735 lib/bbk/utils/proxy_logger.rb