Sha256: ae2324f2351f87dc2f10b03bb329a088cbc1ee90f14e82fedca19bdc7db57991

Contents?: true

Size: 589 Bytes

Versions: 1

Compression:

Stored size: 589 Bytes

Contents

# frozen_string_literal: true

module SpartanAPM
  # Data structure for information about the request metrics for a particular time.
  class Metric
    attr_reader :time
    attr_accessor :count, :avg, :p50, :p90, :p99, :error_count, :components

    def initialize(time)
      @time = time
      @components = {}
    end

    def component_names
      @components.keys.collect { |n| n.to_s.freeze }
    end

    def component_request_time(name)
      Array(@components[name.to_s])[0]
    end

    def component_request_count(name)
      Array(@components[name.to_s])[1]
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
spartan_apm-0.0.0.rc1 lib/spartan_apm/metric.rb