会社の Web サーバーの負荷をログに記録するプログラムを作成しています。ログに記録する必要がある情報の 1 つは、サーバーの CPU 負荷です。
monit
CPU 負荷 --またはtop
/ -- は、 1 つのコアに対して正規化された、コア全体の合計htop
負荷を反映していることを知っています。そのため、8 コア サーバーの場合、合計負荷 (負荷が高い場合) は 100% を超えます。そして、すべてのコアが最大負荷で実行されている場合、800% に達する可能性があります。
ただし、monit および top/htop は、CPU 負荷の数値が 800% を超えて、ジョブがキューに入れられていることを示す、オーバーサブスクライブされた CPU 負荷を示すこともあります。
そんな状況に興味があります。
私の質問:
この
psutil.cpu_times_percent()
関数は、monit の /top の CPU 負荷インジケーターと同じように動作しますか?cpu_times_percent()
つまり、キューに入れられているジョブがある場合、返されるパーセンテージは 100% よりも高くなります ( 1 コアではなく 100% に正規化されます)。#1 に対する答えが「いいえ」の場合、オーバーサブスクリプション / ジョブがキューに入れられていることをどのように検出できますか?