Sha256: ad5f1f8e6b02e93087a6c132f1e9c9fd5cbbe5d34c7e73528e0fb9ad62c5fbdb

Contents?: true

Size: 1.13 KB

Versions: 2

Compression:

Stored size: 1.13 KB

Contents

# typed: false

require_relative '../../configuration/settings'
require_relative '../ext'

module Datadog
  module Tracing
    module Contrib
      module MongoDB
        module Configuration
          # Custom settings for the MongoDB integration
          # @public_api
          class Settings < Contrib::Configuration::Settings
            DEFAULT_QUANTIZE = { show: [:collection, :database, :operation] }.freeze

            option :enabled do |o|
              o.default { env_to_bool(Ext::ENV_ENABLED, true) }
              o.lazy
            end

            option :analytics_enabled do |o|
              o.default { env_to_bool(Ext::ENV_ANALYTICS_ENABLED, false) }
              o.lazy
            end

            option :analytics_sample_rate do |o|
              o.default { env_to_float(Ext::ENV_ANALYTICS_SAMPLE_RATE, 1.0) }
              o.lazy
            end

            option :quantize, default: DEFAULT_QUANTIZE

            option :service_name do |o|
              o.default { ENV.fetch(Ext::ENV_SERVICE_NAME, Ext::DEFAULT_PEER_SERVICE_NAME) }
              o.lazy
            end
          end
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ddtrace-1.9.0 lib/datadog/tracing/contrib/mongodb/configuration/settings.rb
ddtrace-1.8.0 lib/datadog/tracing/contrib/mongodb/configuration/settings.rb