Browse Source

otlp: Document regular and exponential histogram conversions

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
pull/14371/head
Arve Knudsen 5 months ago
parent
commit
9595b174e5
  1. 7
      storage/remote/otlptranslator/prometheusremotewrite/helper.go
  2. 2
      storage/remote/otlptranslator/prometheusremotewrite/histograms.go

7
storage/remote/otlptranslator/prometheusremotewrite/helper.go

@ -220,6 +220,13 @@ func isValidAggregationTemporality(metric pmetric.Metric) bool {
return false
}
// addHistogramDataPoints adds OTel histogram data points to the corresponding Prometheus time series
// as classical histogram samples.
//
// Note that we can't convert to native histograms, since these have exponential buckets and don't line up
// with the user defined bucket boundaries of non-exponential OTel histograms.
// However, work is under way to resolve this shortcoming through a feature called native histograms custom buckets:
// https://github.com/prometheus/prometheus/issues/13485.
func (c *PrometheusConverter) addHistogramDataPoints(dataPoints pmetric.HistogramDataPointSlice,
resource pcommon.Resource, settings Settings, baseName string) {
for x := 0; x < dataPoints.Len(); x++ {

2
storage/remote/otlptranslator/prometheusremotewrite/histograms.go

@ -30,6 +30,8 @@ import (
const defaultZeroThreshold = 1e-128
// addExponentialHistogramDataPoints adds OTel exponential histogram data points to the corresponding time series
// as native histogram samples.
func (c *PrometheusConverter) addExponentialHistogramDataPoints(dataPoints pmetric.ExponentialHistogramDataPointSlice,
resource pcommon.Resource, settings Settings, promName string) error {
for x := 0; x < dataPoints.Len(); x++ {

Loading…
Cancel
Save