func()

in cmd/otelinmemexporter/store.go [264:305]


func (s *Store) add(m pmetric.Metric, resAttrs pcommon.Map) {
	// Fast fail if metric name is not filtered
	_, ok := s.nameM[m.Name()]
	if !ok {
		s.logger.Debug(
			"skipping metric, no config matched",
			zap.String("name", m.Name()),
			zap.String("type", m.Type().String()),
		)
		return
	}

	switch m.Type() {
	case pmetric.MetricTypeGauge:
		s.mergeNumberDataPoints(m.Name(), m.Gauge().DataPoints(), resAttrs)
	case pmetric.MetricTypeSum:
		if m.Sum().AggregationTemporality() == pmetric.AggregationTemporalityCumulative {
			s.logger.Warn(
				"unexpected, all cumulative temporality should be converted to delta",
				zap.String("name", m.Name()),
				zap.String("type", m.Type().String()),
			)
			return
		}
		s.mergeNumberDataPoints(m.Name(), m.Sum().DataPoints(), resAttrs)
	case pmetric.MetricTypeHistogram:
		if m.Histogram().AggregationTemporality() == pmetric.AggregationTemporalityCumulative {
			s.logger.Warn(
				"unexpected, all cumulative temporality should be converted to delta",
				zap.String("name", m.Name()),
				zap.String("type", m.Type().String()),
			)
			return
		}
		s.mergeHistogramDataPoints(m.Name(), m.Histogram().DataPoints(), resAttrs)
	default:
		s.logger.Warn(
			"metric type not implemented",
			zap.String("type", m.Type().String()),
		)
	}
}