func GatherInt64Metric()

in metrictest/metric.go [69:91]


func GatherInt64Metric(ms []metricdata.Metrics) Int64Metrics {
	observed := Int64Metrics{}
	for _, m := range ms {
		valueMap := Dimension{}
		switch data := m.Data.(type) {
		case metricdata.Sum[int64]:
			for _, dp := range data.DataPoints {
				if dp.Attributes.Len() == 0 {
					valueMap[KV{}] += int64(dp.Value)
				}
				iter := dp.Attributes.Iter()
				for iter.Next() {
					attr := iter.Attribute()
					valueMap[KV{string(attr.Key), attr.Value.Emit()}] += int64(dp.Value)
				}
			}
		default:
			continue
		}
		observed[Key{Name: m.Name, Unit: m.Unit}] = valueMap
	}
	return observed
}