Sha256: 0fdc0ae365d7b07f47e93677038d071bbddeccba08c6307756d5817a2cbd10f3

Contents?: true

Size: 1.35 KB

Versions: 5

Compression:

Stored size: 1.35 KB

Contents

# typed: false
require 'ddtrace/contrib/configuration/settings'
require 'ddtrace/contrib/rack/ext'

module Datadog
  module Contrib
    module Rack
      module Configuration
        # Custom settings for the Rack integration
        class Settings < Contrib::Configuration::Settings
          DEFAULT_HEADERS = {
            response: %w[
              Content-Type
              X-Request-ID
            ]
          }.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, Ext::ENV_ANALYTICS_ENABLED_OLD], nil) }
            o.lazy
          end

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

          option :application
          option :distributed_tracing, default: true
          option :headers, default: DEFAULT_HEADERS
          option :middleware_names, default: false
          option :quantize, default: {}
          option :request_queuing, default: false

          option :service_name, default: Ext::SERVICE_NAME

          option :web_service_name, default: Ext::WEBSERVER_SERVICE_NAME
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ddtrace-0.54.2 lib/ddtrace/contrib/rack/configuration/settings.rb
ddtrace-0.54.1 lib/ddtrace/contrib/rack/configuration/settings.rb
ddtrace-0.54.0 lib/ddtrace/contrib/rack/configuration/settings.rb
ddtrace-0.53.0 lib/ddtrace/contrib/rack/configuration/settings.rb
ddtrace-0.52.0 lib/ddtrace/contrib/rack/configuration/settings.rb