Sha256: d48cebffd0011adcd93b0350fafe26ace2f9647fb648ce2ff6b2dcf856db5d05

Contents?: true

Size: 1.13 KB

Versions: 5

Compression:

Stored size: 1.13 KB

Contents

# frozen_string_literal: true

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

module Datadog
  module Tracing
    module Contrib
      module Grape
        module Configuration
          # Custom settings for the Grape integration
          # @public_api
          class Settings < Contrib::Configuration::Settings
            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 :service_name

            option :error_statuses, default: nil do |o|
              o.setter do |new_value, _old_value|
                Contrib::StatusCodeMatcher.new(new_value) unless new_value.nil?
              end
            end
          end
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ddtrace-1.12.1 lib/datadog/tracing/contrib/grape/configuration/settings.rb
ddtrace-1.12.0 lib/datadog/tracing/contrib/grape/configuration/settings.rb
ddtrace-1.11.1 lib/datadog/tracing/contrib/grape/configuration/settings.rb
ddtrace-1.11.0 lib/datadog/tracing/contrib/grape/configuration/settings.rb
ddtrace-1.11.0.beta1 lib/datadog/tracing/contrib/grape/configuration/settings.rb