promscale icon indicating copy to clipboard operation
promscale copied to clipboard

Support for OpenTelemetry / OTLP metrics

Open ramonguiu opened this issue 3 years ago • 1 comments

What is missing?

The ability to ingest OTLP metrics natively

Why do we need it?

Currently users can use the OpenTelemetry Collector to convert metrics from OTLP to Prometheus as described in [our documentation]. However this configuration doesn't support delta metrics and requires that delta metrics are converted to cumulative metrics before they hit the collector.

Anything else we need to know?

ramonguiu avatar Jul 26 '22 09:07 ramonguiu

In addition to the lack of delta metrics there are other Prometheus limitations comparing to OpenTelemetry (OTLP):

  1. Timestamp precision: milliseconds for Prometheus, nanoseconds for OTLP (Actual precision depends on implementation, e.g. Python OTLP SDK uses datetime.datetime for timestamps so it's limited to microseconds).
  2. Metric value type: floating point for Prometheus, floating point or 64-bit integer for OTLP
  3. OTLP histogram contains min and max values
  4. OTLP has exponential histogram metric type which allows “perfect subsetting”
  5. OTLP metrics contain start and end timestamps so they’re more suitable for reaggregation and some sorts of validation.

Links:

  1. OTLP metrics spec
  2. OTLP metrics format

oliora avatar Jul 26 '22 20:07 oliora