1ヶ月の平均待ち時間を求める

1ヶ月の平均待ち時間を求める

私はLinuxにあまり慣れていません。したがって、他の人にとって、これは簡単な質問かもしれません。私たちが走るときトップc コマンド - サーバーの現在の状態の平均待機時間(wa)を取得します。過去1ヶ月間の平均待ち時間がどれくらいであるかを知りたいです。この情報を取得する方法はありますか?

ベストアンサー1

この情報を定期的に記録し、1ヶ月間保管する必要があります。

sysstatなどのリソース使用量追跡ツールがありますatop

少なくともatopDebianでは、10分ごとにサンプリングされた情報が/var/log/atop

グローバルCPU使用量情報は、次のコマンドで照会できます。

atop -r /path/to/log/file -PCPU

マニュアルatopページはこの出力の説明を提供し、各行について、6番目のフィールドはその期間の秒数を報告し、7番目のフィールドは1秒あたりのCPUティック数を報告し、13番目のフィールドはレポートを報告します。わかります。 1秒あたりのCPUティック数。 CPU ティック数。待つカチカチ音。

したがって、GNUツールを使用していると仮定すると、次のようにできます。

start=$(date -d '1 month ago' +%s)
find /var/log/atop -maxdepth 1 -name 'atop_[0-9]*' \
  -newermt "@$start" -exec atop -r {} -PCPU \; |
  awk -v start="$start" '
    $3 >= start {t += $6 * $7; w += $13}
    END {printf "%.2f%%\n", w * 100 / t}'

おすすめ記事