class Atatus::Transport::Serializers::MetricsetSerializer

@api private

Public Instance Methods

build(metricset) click to toggle source
# File lib/atatus/transport/serializers/metricset_serializer.rb, line 25
def build(metricset)
  payload = {
    timestamp: metricset.timestamp.to_i,
    samples: build_samples(metricset.samples)
  }

  if metricset.tags?
    payload[:tags] = mixed_object(metricset.tags)
  end

  if metricset.transaction
    payload[:transaction] = metricset.transaction
  end

  if metricset.span
    payload[:span] = metricset.span
  end

  { metricset: payload }
end

Private Instance Methods

build_samples(samples) click to toggle source
# File lib/atatus/transport/serializers/metricset_serializer.rb, line 48
def build_samples(samples)
  samples.each_with_object({}) do |(key, value), hsh|
    hsh[key] = { value: value }
  end
end