Prometheus Metric
Learn more about Querying Prometheus.
This widget can show metrics for your service defined by PromQL queries which are requested from a running Prometheus instance.
Quries can be defined in the metrics array of the widget along with a label to be used to present the metric value. You can optionally specify a global refreshInterval in milliseconds and/or define the refreshInterval per metric. Inside the optional format object of a metric various formatting styles and transformations can be applied (see below).
widget: type: prometheusmetric url: https://prometheus.host.or.ip refreshInterval: 10000 # optional - in milliseconds, defaults to 10s metrics: - label: Metric 1 query: alertmanager_alerts{state="active"} - label: Metric 2 query: apiserver_storage_size_bytes{node="mynode"} format: type: bytes - label: Metric 3 query: avg(prometheus_notifications_latency_seconds) format: type: number suffix: s options: maximumFractionDigits: 4 - label: Metric 4 query: time() refreshInterval: 1000 # will override global refreshInterval format: type: date scale: 1000 options: timeStyle: mediumFormatting
Section titled “Formatting”Supported values for format.type are text, number, percent, bytes, bits, bbytes, bbits, byterate, bibyterate, bitrate, bibitrate, date, duration, relativeDate, and text which is the default.
The dateStyle and timeStyle options of the date format are passed directly to Intl.DateTimeFormat and the style and numeric options of relativeDate are passed to Intl.RelativeTimeFormat. For the number format, options of Intl.NumberFormat can be used, e.g. maximumFractionDigits or minimumFractionDigits.
Data Transformation
Section titled “Data Transformation”You can manipulate your metric value with the following tools: scale, prefix and suffix, for example:
- query: my_custom_metric{} label: Metric 1 format: type: number scale: 1000 # multiplies value by a number or fraction string e.g. 1/16- query: my_custom_metric{} label: Metric 2 format: type: number prefix: "$" # prefixes value with given string- query: my_custom_metric{} label: Metric 3 format: type: number suffix: "€" # suffixes value with given string