Linux マシンの実行中のプロセスを時間の経過とともに監視したいと考えています。
私の DIY 解決策は次のようになります:
ps aux --forest
1 分ごとにファイルにダンプします 。
背景: 「昨日の 8 時頃に問題が発生しました」というメッセージを受け取った場合、何が起こっていたのかを確認したいです。
負荷と IO の値をまとめるツールはたくさんありますが、より詳細な情報が必要です。
上記のダンプのような間に合わせの配管を行うこともできますps
が、もっと良い解決策があると思います。
どのツールが役立つでしょうか?
閉まっている
ツールについて質問したため、この質問は閉じられました。ここで同じ質問をしました:
https://softwarerecs.stackexchange.com/questions/20459/monitoring-processes-in-detail-not-summarized
答え1
あまりに細かく監視するとシステムのパフォーマンスに悪影響を与えることを認識する必要があります。そのため、通常はサーバーとサービスの全体的な健全性を監視し、さらに次の点に重点を置きます。具体的なパフォーマンス指標あなたのサービスに関連するもの。
そうすれば、"何か「昨夜は間違っていた」ともう言わないけど、その通り何が問題なのそれが起こったらすぐに「。
しかし、サービスではなくシステムの一定期間存続するプロセスを監視したい場合は、監査デーモンを使用するのがより「適切な」方法の 1 つになります。
何かのようなもの:
auditctl -a exit,always -S execve
これにより、(システム コールを使用して) 開始されたすべてのプログラムがログに記録されますexecve
。