Sha256: 30498c49d06f0ef93f68c262d8b4c3c863b89ec7f95b08124fbfdfecc5a23d2e

Contents?: true

Size: 840 Bytes

Versions: 1

Compression:

Stored size: 840 Bytes

Contents

# frozen_string_literal: true

require "dry/core/extensions"
require "dry/core/constants"
require "zeitwerk"

module Dry
  module Monitor
    extend Dry::Core::Extensions
    include Dry::Core::Constants

    register_extension(:rack) do
      require "rack/utils"

      Dry::Monitor::Rack::Logger
    end

    register_extension(:sql) do
      Dry::Monitor::SQL::Logger
    end

    class << self
      def loader
        @loader ||= Zeitwerk::Loader.new.tap do |loader|
          root = File.expand_path("..", __dir__)
          loader.tag = "dry-monitor"
          loader.inflector = Zeitwerk::GemInflector.new("#{root}/dry-monitor.rb")
          loader.push_dir(root)
          loader.ignore("#{root}/dry-monitor.rb")
          loader.inflector.inflect "sql" => "SQL"
        end
      end
    end
  end
end

Dry::Monitor.loader.setup

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
dry-monitor-0.6.0 lib/dry/monitor.rb