簡體   English   中英

Prometheus cAdvisor碼頭工人監控

[英]Prometheus cAdvisor docker monitoring

我使用Prometheus,Grafana和cAdvisor建立了一個docker監控堆棧。 使用此查詢來獲取正在運行的容器:

count_scalar(container_last_seen{name=~container1|container2})

它可以直接拿起容器,一旦我啟動一個新的容器就可以立即拿起它。 問題是當一個容器被停止或移除時它不會撿起它,它仍然將它顯示為一個正在運行的容器。

從cAdvisor / metrics端點,一旦容器停止,它就會被刪除。

查詢有問題嗎?

(這是我用於堆棧的內容: https//github.com/vegasbrianc/prometheus

它似乎與cAdvisor將數據存儲在內存中的時間量有關

雖然cAdvisor將數據保存在內存中,但您仍然在container_last_seen指標中有一個有效的日期。 因此count_scalar指令仍然“看到”容器,因為它具有有效值。

在我的測試設置中,cAdvisor在5分鍾內保存數據。 在此期間之后,我從您的公式中獲取了正確的信息,因為container_last_seen指標已消失。

您可以使用--storage_duration標志更改此cAdvisor配置。

--storage_duration=2m0s: How long to store data.

作為替代方案,如果您不想快速提醒,您還可以考慮運行一個查詢,將上次看到的日期與當前日期進行比較:

count_scalar(time()-container_last_seen{name=~"container1|container2"}<=60)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM