2015-11-19 42 views
6

我們使用Riemann和Riemann健康監控我們的服務器。但是現在我得到了很多CPU嚴重警告,因爲CPU在很短的時間內達到峯值 - 這是我甚至不需要知道的我想到的。根據我的理解,持續高CPU使用率會增加負載平均值,這也會被報告,並且聽起來更有用。報告CPU始終與Riemann合作

我不想禁用報告CPU,只是每個級別應該被認爲是好的。如果可能的話,我想更改Riemann服務器上的事件,所以我不必更改所有服務器。

這裏我們黎曼配置:https://gist.github.com/iGEL/e352764a8c559440c851

+0

你能不能也發表riemann日誌? –

回答

0

我沒有一個完整的解決方案,但在理論上你應該能夠通過where功能來過濾你的CPU相關的事件,並無條件設置狀態爲「正常」使用with如下:

(streams 
    (where (service #"cpu") 
     (with :state "ok" index))) 

在另一方面,依託於平均負載是不是一個好主意,因爲在高負荷平均也意味着a large number of processes are waiting for IO

而不是沉默CPU警報,只有當CPU處於超過X時間單位的狀態不正常時,纔可以發出警報。 更好的是,在更高級別的度量上發出警報,以表示客戶端影響的問題,例如響應延遲,http狀態代碼,錯誤級別等。 畢竟,如果CPU很高但對系統沒有影響,警報可能只是噪音。