2016-08-05 255 views
2

如果我使用下面的查詢普羅米修斯TOPK返回更多的結果比預期

topk(5,sum(container_memory_usage_bytes{kubernetes_container_name=~".+", kubernetes_namespace=~".+"}) by (kubernetes_namespace,kubernetes_container_name)) 

返回5個結果epxected。

然而,隨着

topk(5,sum(irate(container_cpu_usage_seconds_total{kubernetes_container_name=~".+", kubernetes_namespace=~".+"}[20s])) by (kubernetes_namespace,kubernetes_container_name)) 

約18返回結果。任何想法爲什麼發生這種情況而我需要在第二個查詢中更改才能獲得前5名?

回答

1

這些與topk觀點相同的查詢都應返回不超過5個結果。

我說得對,你沒有把這個作爲一個查詢來運行,而是作爲一個圖表來運行嗎?如果真的如此,你想選擇哪個5?

+0

確實,它在格拉法納的圖表中使用。我想在這種情況下,我想看到平均CPU使用率最高的前5名。 –

+1

剛發現關於這個確切問題的票https://github.com/prometheus/prometheus/issues/586,所以我想現在沒有好的解決方案。 –