プロセスが停止している理由をどうやって判断すればよいですか?

プロセスが停止している理由をどうやって判断すればよいですか?

CentOS 6.5 サーバーでは、POST リクエストを受け入れ、POST リクエストのペイロード コンテンツを別のサービスに渡すためだけの、Sinatra を使用した非常にシンプルな HTTP リスナーを実行しています。

Sinatra サービスの PID を持つプロセスが存在しなくなり、ログに説明がないことがよくあります。

Sinatra コードにデバッグ レベルのログ記録がありますが、プロセスが停止する原因がボックス上で何なのかについての手がかりはまだありません。

この特定のプロセスを監視し、それが強制終了される原因を特定するために、Linux 側でこの問題に対して何ができるでしょうか?

答え1

やってみるのもいい

strace -p pid番号 >& /tmp/process.txt

プロセスが終了したら、/tmp/process.txtの内容を調べることができます。

調査したいプロセスの場合は、pid-number を数値の pid に置き換える必要があります。

関連情報