node-exporter cpu使用率爲負數

在prometheus利用公式:100 - (avg by (instance) (irate(node_cpu{instance="xxx", mode="idle"}[5m])) * 100) 計算cpu使用率,若是cpu低負載,且多核(個人是32核)的狀況下,會出現負數。node

 

 

緣由:cpu的使用數據都是測算值來的(CPU處於空閒狀態時間比例。通常而言,idel + user + nice 約等於100%)。當cpu處於多核、低負載的狀況下,值的差別會被放大,從而致使出現負數的狀況。ide

解決方法:spa

換成公式:avg by (ip)(irate(node_cpu_seconds_total{mode=~"sytem|user|iowait|irq|softirq|nice|steal|guest"}[5m])) * 100code

相關文章
相關標籤/搜索