module Metrics::MiddlewareHelpers

Private Instance Methods

group(namespace, options, &block) click to toggle source
# File lib/metrics/middleware_helpers.rb, line 28
def group(namespace, options, &block)
  Metrics.group(namespace, options, &block)
end
instrument(*args, &block) click to toggle source
# File lib/metrics/middleware_helpers.rb, line 24
def instrument(*args, &block)
  Metrics.instrument(*args, &block)
end
request_metrics(status, duration, options = {}) click to toggle source
# File lib/metrics/middleware_helpers.rb, line 7
def request_metrics(status, duration, options = {})
  metric = options[:metric]
  source = options[:source]

  group metric, source: source do |group|
    group.instrument 'time', duration, units: 'ms'

    group.group 'status' do |group|
      group.increment status
      group.increment "#{status.to_s[0]}xx"

      group.instrument "#{status}.time", duration, units: 'ms'
      group.instrument "#{status.to_s[0]}xx.time", duration, units: 'ms'
    end
  end
end