in remappers/internal/remappedmetric/metric.go [67:106]
func Add(
ms pmetric.MetricSlice,
mutator func(dp pmetric.NumberDataPoint),
metrics ...Metric,
) {
ms.EnsureCapacity(ms.Len() + len(metrics))
for _, metric := range metrics {
if !metric.Valid() {
continue
}
m := ms.AppendEmpty()
m.SetName(metric.Name)
var dp pmetric.NumberDataPoint
switch metric.DataType {
case pmetric.MetricTypeGauge:
dp = m.SetEmptyGauge().DataPoints().AppendEmpty()
case pmetric.MetricTypeSum:
dp = m.SetEmptySum().DataPoints().AppendEmpty()
}
if metric.IntValue != nil {
dp.SetIntValue(*metric.IntValue)
} else if metric.DoubleValue != nil {
dp.SetDoubleValue(*metric.DoubleValue)
}
dp.SetTimestamp(metric.Timestamp)
if metric.StartTimestamp != 0 {
dp.SetStartTimestamp(metric.StartTimestamp)
}
dp.Attributes().EnsureCapacity(minAttributeCapacity)
dp.Attributes().PutBool(common.OTelRemappedLabel, true)
mutator(dp)
}
}