![](/img/trans.png)
[英]Is there a simple PromQL statement used convert cumulative histogram into ordinal histogram?
[英]PromQL if then statement equivalent
我有一個執行計數的簡單 PromQL 查詢:
sum(up{container_name="my-container",environment_name="$env"})
這是 Grafana 儀表板的一部分,允許從下拉菜單中選擇 ${env}。
我想根據環境執行不同的查詢。
我如何在 PromQL 中構造這樣的東西:
if ${env} == 'dev' or ${env} == 'integration':
if sum(up{container_name="my-container",environment_name="$env"}) == 1:
sum(up{container_name="my-container",environment_name="$env"}) + 1
else:
sum(up{container_name="my-container",environment_name="$env"})
else:
sum(up{container_name="my-container",environment_name="$env"})
目的是在運行單個容器的環境中錯誤地增加計數以觸發 RAG 狀態面板中的健康閾值。
你可以這樣查詢:
(
sum(up{container_name="my-container", environment_name=~"dev|integration", environment_name="$env"}) + 1
AND
(sum(up{container_name="my-container", environment_name=~"dev|integration", environment_name="$env"} == 1)
)
OR
sum(up{container_name="my-container", environment_name=~"dev|integration", environment_name="$env"}) != 1
OR
sum(up{container_name="my-container", environment_name="prod", environment_name="$env"})
OR
on() vector(0)
當實例數量為 1(這就是and
所做的)並且用戶選擇了開發或集成環境時,這將返回實例數量增加一。 or
將同時三個指標,但由於查詢和用戶選擇,只能返回一個指標。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.