Sha256: 930ad89c9b0c8f4b270754e304d46e1fa6d2fa3b5b8150fb03b2ea896883502e

Contents?: true

Size: 914 Bytes

Versions: 2

Compression:

Stored size: 914 Bytes

Contents

# frozen_string_literal: true

require "dry/configurable"
require "hanami/logger"

module Hanami
  class Configuration
    # Hanami logger configuration
    #
    # @since 2.0.0
    class Logger
      include Dry::Configurable

      protected :config

      setting :logger_class, default: Hanami::Logger

      setting :options, default: {level: :debug}

      # Currently used for logging of Rack requests only.
      #
      # TODO: incorporate this into the standard logging some way or another
      setting :filter_params, default: %w[_csrf password password_confirmation].freeze

      private

      def method_missing(name, *args, &block)
        if config.respond_to?(name)
          config.public_send(name, *args, &block)
        else
          super
        end
      end

      def respond_to_missing?(name, _incude_all = false)
        config.respond_to?(name) || super
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
hanami-2.0.0.alpha4 lib/hanami/configuration/logger.rb
hanami-2.0.0.alpha3 lib/hanami/configuration/logger.rb