sarコマンドでエラーが出たときのメモ
sarコマンドで次のようなエラーが出た時の対応方法のメモです。
Cannot open /var/log/sysstat/sa22: No such file or directory Please check if data collecting is enabled
| 対応方法
sarコマンドは、システムパフォーマンスの監視ツールであるsysstatに含まれるユーティリティで、CPU使用率やメモリ使用量、ディスクI/Oを取得することができます。コマンドの実行時に上述のエラーが出た場合は、sysstatの設定ファイルを修正することで解消できます。対象の設定ファイルは「/etc/default/sysstat」で、「ENABLED」の値を「false」から「true」に変更します。
$ sudo vi /etc/default/sysstat
修正前
# # Default settings for /etc/init.d/sysstat, /etc/cron.d/sysstat # and /etc/cron.daily/sysstat files # # Should sadc collect system activity informations? Valid values # are "true" and "false". Please do not put other values, they # will be overwritten by debconf! ENABLED="false"
修正後
# # Default settings for /etc/init.d/sysstat, /etc/cron.d/sysstat # and /etc/cron.daily/sysstat files # # Should sadc collect system activity informations? Valid values # are "true" and "false". Please do not put other values, they # will be overwritten by debconf! ENABLED="true"
sysstatプロセスの再起動と起動状態を確認し、起動していればsarコマンドを実行できます。
$ sudo systemctl restart sysstat $ sudo systemctl status sysstat → activeと表示されることを確認する。
| その他参考情報
そもそもsarコマンドがない場合は、次のコマンドでインストールできます(Debian系の場合)。
$ sudo apt install -y sysstat
sarコマンドでCPU使用率を確認する例を確認します。この出力結果の場合、%idle(CPUが何もしていない状態の割合)が0で、%user(アプリケーションなどのプロセス)が90%以上となっており、CPU負荷が非常に高い状態であることが分かります。
$ sar -u Linux 6.6.15-amd64 (iomat) 06/22/24 _x86_64_ (1 CPU) 13:57:21 LINUX RESTART (1 CPU) 14:00:12 CPU %user %nice %system %iowait %steal %idle 14:10:04 all 93.64 0.00 6.36 0.00 0.00 0.00 14:20:04 all 92.23 0.00 7.77 0.00 0.00 0.00 14:30:12 all 92.75 0.00 7.24 0.00 0.00 0.00 14:40:12 all 93.05 0.00 6.95 0.00 0.00 0.00 Average: all 92.92 0.00 7.08 0.00 0.00 0.00
| 参考
- 参考1:https://qiita.com/junokichi/items/4275e9b5b7b8fb78f21c
- 参考2:https://qiita.com/kidach1/items/07637a5baa0da7d52e6a