
私は 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