タグ付けされた質問 「strace」

6
CPU使用率の高いApacheプロセスが実際に何をしているのかを調べますか?
現在、サーバーにいくつかの問題があり、断続的に、100%のCPUを占有して実行されるapacheプロセスを取得するようです。 topを実行すると、次が表示されます。 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 20788 www-data 20 0 318m 18m 3984 R 100 0.0 40:29.21 /usr/sbin/apache2 -k start 23523 www-data 20 0 319m 20m 4684 R 100 0.0 4:12.36 /usr/sbin/apache2 -k start どのスクリプト(またはそれが何であれ)がこれを引き起こしているのを見つけてみたいので、試しました。 strace -p 20788 ただし、出力はまったく表示されません(約10分間そのままにしておきましたが、何も表示されません)。私の理解では、これは無限ループに陥っており、表示する「システムコール」がないことを意味する可能性があります。 何が起こっているかを示すために私ができることは他にありますか? ありがとう 編集-言及し忘れましたが、これは一度に数百人のユーザーがいるライブサーバーです!ですから、設定オプションを自由に変更して、Apacheを再起動することは本当にできません。 …


3
Linuxマシンで新しく生成されたすべてのプロセスを監視する
時々、プロセスが私よりも速く行ったり来たりすることがありますが、もう一度ps aux試しましたwatch -d -n0.1 "ps aux | tail"が、それは1/10秒に制限されています。私が本当に欲しいのは、コマンドを実行し、すべての新しいプロセスを、1行に1つずつ、発生時に追跡することです。高速で実行されるプロセスでさえも。私straceはこれに似た能力を持っていることを知っていますが、私が望んでいることをすることができませんでした。 tl;dr :すべての新しいプロセスを記録する方法はありますか? 私はあまり知りたくありませんが、1行だけでps aux私に与えます、現在のケースでは、別のものによって生成されて消えるプロセスがあります、それを実行できるようにしたいのですが、私は知りませんコマンドがどうなるか。新しいPIDを知っていても十分です。これらを取得して実行するスクリプトps | grepを考え出し、プロセスの実行中に詳細情報を提供できるからです(プロセスpsが進行するときにプロセスがまだ残っていることを前提としています)。
12 process  ps  strace 

4
このコマンドをどのように簡略化しますか?
私はstrace / netstat /などに慣れていません。このコマンドを使用して、リクエスト(telnet)を処理するapacheプロセスのトレースを取得しています。少し単純化する方法はありますか? sudo strace -o /tmp/strace -f -s4096 -r -p $(netstat -antlp | \ grep $(lsof -p `pidof telnet` | grep TCP | \ perl -n -e'/localhost:(\d+)/ && print $1') | grep apache2 | \ perl -n -e'/ESTABLISHED (\d+)/ && print $1') ありがとう!

3
LinuxでシステムCPU /システムコールを監視する
システムのCPU時間を大量に消費しているプロセスがいくつかあります(vmstatを確認することで判断)。行われているシステムコールの種類を簡単に確認する方法はありますか? straceがあることは知っていますが、より速くて簡単な方法はありますか?システムコールの「トップ」のようなものはありますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.