統計からCPU使用率を取得できません

統計からCPU使用率を取得できません

私は Linux で collectd というツールを使っています。このツールはさまざまな CPU 統計情報を提供します。次のような結果が表示されます。

CPU ユーザーモード

CPU システムモード

CPU いいな

CPUアイドル

CPU 待機

CPU割り込み

CPU ソフト IRQ

CPU スティール

さて、CPU 使用率 % を取得するために、これらの統計を組み合わせたいと思います。何かアイデアはありますか?

編集: インターネットを見ると、たとえば、cpu_user_mode 統計の連続する 2 つの測定値を減算 (もちろん 100 で割る) することで、ユーザー空間で使用されている %cpu を取得できるようです。なぜでしょうか。これらの値は、起動時からこれらの状態で CPU が費やした時間を表します。なぜ 2 つの測定値を減算すると % が得られるのでしょうか。

答え1

合計 CPU 使用量を知りたい場合は、次のコマンドを使用します。

top -b -d1 -n1|grep -i "Cpu(s)"|head -c21|cut -d ' ' -f3|cut -d '%' -f1

関連情報