Sha256: 9129514d28b0516b69017822100372841660eb5f139ea270dcd257ee1fef3391

Contents?: true

Size: 1.4 KB

Versions: 4

Compression:

Stored size: 1.4 KB

Contents

# typed: false

require 'datadog/tracing/contrib/configuration/settings'
require 'datadog/tracing/contrib/rack/ext'

module Datadog
  module Tracing
    module Contrib
      module Rack
        module Configuration
          # Custom settings for the Rack integration
          # @public_api
          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, nil) }
              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 :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

            option :web_service_name, default: Ext::DEFAULT_PEER_WEBSERVER_SERVICE_NAME
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ddtrace-1.2.0 lib/datadog/tracing/contrib/rack/configuration/settings.rb
ddtrace-1.1.0 lib/datadog/tracing/contrib/rack/configuration/settings.rb
ddtrace-1.0.0 lib/datadog/tracing/contrib/rack/configuration/settings.rb
ddtrace-1.0.0.beta2 lib/datadog/tracing/contrib/rack/configuration/settings.rb