module Datadog::Metrics::Options

For defining and adding default options to metrics

Constants

DEFAULT

Public Instance Methods

default_metric_options() click to toggle source
# File lib/ddtrace/metrics.rb, line 150
def default_metric_options
  # Return dupes, so that the constant isn't modified,
  # and defaults are unfrozen for mutation in Statsd.
  DEFAULT.dup.tap do |options|
    options[:tags] = options[:tags].dup

    env = Datadog.configuration.env
    options[:tags] << "#{Datadog::Ext::Environment::TAG_ENV}:#{env}" unless env.nil?

    version = Datadog.configuration.version
    options[:tags] << "#{Datadog::Ext::Environment::TAG_VERSION}:#{version}" unless version.nil?
  end
end
metric_options(options = nil) click to toggle source
# File lib/ddtrace/metrics.rb, line 137
def metric_options(options = nil)
  return default_metric_options if options.nil?

  default_metric_options.merge(options) do |key, old_value, new_value|
    case key
    when :tags
      old_value.dup.concat(new_value).uniq
    else
      new_value
    end
  end
end