Need two Prometheus metric values in a single promql query

Viewed 829

I need two Prometheus metric values in a single query. My metric1 is http_request_duration_seconds_bucket and metric2 is http_request_duration_seconds_count I would like to have my query output in below table format. Label1, Label2, metric1, metric2. Where label1 and label2 are common for both metrics. Can anyone help with the promql query?

2 Answers

You can use the or binary operator in Prometheus.

http_request_duration_seconds_bucket or 
http_request_duration_seconds_count

Here is a demo working example using instance as a common label for two different metrics

alertmanager_alerts_received_total or
alertmanager_alerts_invalid_total

Result:

alertmanager_alerts_received_total{instance="demo.robustperception.io:9093", job="alertmanager", status="firing", version="v1"}
0
alertmanager_alerts_received_total{instance="demo.robustperception.io:9093", job="alertmanager", status="firing", version="v2"}
635876
alertmanager_alerts_received_total{instance="demo.robustperception.io:9093", job="alertmanager", status="resolved", version="v1"}
0
alertmanager_alerts_received_total{instance="demo.robustperception.io:9093", job="alertmanager", status="resolved", version="v2"}
0
alertmanager_alerts_invalid_total{instance="demo.robustperception.io:9093", job="alertmanager", version="v1"}
0
alertmanager_alerts_invalid_total{instance="demo.robustperception.io:9093", job="alertmanager", version="v2"}
Related