def statsd_distribution(method, name, *metric_options)
      add_to_method(method, name, :distribution) do
        define_method(method) do |*args, &block|
          StatsD.distribution(StatsD::Instrument.generate_metric_name(name, self, *args), *metric_options) { super(*args, &block) }
        end
      end
    end
def statsd_distribution(method, name, *metric_options)
      add_to_method(method, name, :distribution) do
        define_method(method) do |*args, &block|
          StatsD.distribution(StatsD::Instrument.generate_metric_name(name, self, *args), *metric_options) { super(*args, &block) }
        end
      end
    end
Adds execution duration instrumentation to a method as a distribution.

 @param method [Symbol] The name of the method to instrument.
 @param name [String, #call] The name of the metric to use. You can also pass in a
    callable to dynamically generate a metric name
 @param metric_options (see StatsD#measure)
 @return [void]
 @note Supported by the datadog implementation only (in beta)