prometheus.histogramQuantile() function

prometheus.histogramQuantile() is experimental and subject to change at any time. By using this function, you accept the risks of experimental functions.

prometheus.histogramQuantile() calculates a quantile on a set of Prometheus histogram values.

This function supports Prometheus metric parsing formats used by prometheus.scrape(), the Telegraf promtheus input plugin, and InfluxDB scrapers available in InfluxDB OSS.

Function type signature
(<-tables: stream[{B with le: D, _field: C}], quantile: float, ?metricVersion: A) => stream[E] where A: Equatable, C: Equatable, E: Record
For more information, see Function type signatures.



(Required) Quantile to compute. Must be a float value between 0.0 and 1.0.


Prometheus metric parsing format used to parse queried Prometheus data. Available versions are 1 and 2. Default is 2.


Input data. Default is piped-forward data (<-).


Compute the 0.99 quantile of a Prometheus histogram

import "experimental/prometheus"

prometheus.scrape(url: "http://localhost:8086/metrics")
    |> filter(fn: (r) => r._measurement == "prometheus")
    |> filter(fn: (r) => r._field == "qc_all_duration_seconds")
    |> prometheus.histogramQuantile(quantile: 0.99)

Compute the 0.99 quantile of a Prometheus histogram parsed with metric version 1

import "experimental/prometheus"

from(bucket: "example-bucket")
    |> range(start: -1h)
    |> filter(fn: (r) => r._measurement == "qc_all_duration_seconds")
    |> prometheus.histogramQuantile(quantile: 0.99, metricVersion: 1)

Was this page helpful?

Thank you for your feedback!

Upgrade to InfluxDB Cloud or InfluxDB 2.0!

InfluxDB Cloud and InfluxDB OSS 2.0 ready for production.