はじめに
しばらくずっとデスクトップOSは Linux でしたが、およそ十年ぶりに Windows の常用を始めました。
CPU の使用率が気になりました。
Zabbix で記録することにしました。
Zabbix の CPU LLD について
CPU LLD は Zabbix 2.4 から使用可能になりました。キーは system.cpu.discovery です。もちろんアイテムタイプは Zabbix Agent です。
https://www.zabbix.com/documentation/2.4/manual/discovery/low_level_discovery#discovery_of_cpus_and_cpu_cores
プロトタイプ
アイテム
とりあえず下記でデータを集めてます。
No | Name | Key or Param |
---|---|---|
1 | CPU {#CPU.NUMBER} idle time | perf_counter[\Processor({#CPU.NUMBER})\% Idle Time] |
2 | CPU {#CPU.NUMBER} busy time | 100-last("perf_counter[\Processor({#CPU.NUMBER})\% Idle Time]") |
どっちかというと non idle の値が見たいです。
あと、マニュアルでは perf_counter[] のパラメータは "" で囲ってありますが、計算アイテムで使う時に訳がわからなくなるので、省略しました。
グラフ
できればタスクマネージャのようにコアを並べてグラフを見たいんですけど、そこは LLD の範疇の外なので、今回はグラフ・プロトタイプも作ってスクリーンに挿入できるようにしています。
(スクリーンに挿入できるグラフは、定義済みグラフだけ。残念。)
なお、上記アイテムを合算しても 100 になりませんが、気にしないことにします。
まとめ
作業用PCの CPU は滅多に交換されないので LLD のメリットは多くはない気がします。ただ8スレッドもあるとアイテムの修正も結構面倒なので LLD にやってもらうことにしました。
少し冗長という気もしますが、楽でよいです。