CoreDumpの取り方(自分用メモ)

友人のサイトの一部のページがPHPがクラッシュ?しているか何かで落ちてしまって見れなかったので調査中 その時、coredump取る手順を調べたのでメモしておく

ulimit -aで、現在の設定を確認 coreの行が0だったら吐かれてない

ulimit -c unlimitedで一時的に吐かれるように設定する

httpd.confにログの出力先を設定して、gracefulする CoreDumpDirectory /tmp

すると、ログを設定したパスに出力されるようになる、はず ※というのも私の環境だと全然違うパスに出力されていた…。謎。

んで、 #gdb /usr/local/apache2/bin/httpd -c /tmp/core.30864 で、gdbでのデバッグ

whereで落ちた場所を特定(at何とかって出てくるはず)するが、 私の環境だと、無限ループっぽい…。(at何とかがでてこない)

参考にしたページ sarface2012.hatenablog.com

Linux環境設定/コアダンプを出力するようにする - Linuxと過ごす

別のアプローチで調べる必要がありそう。 さて、どうしようかなぁ。

※注意※ dump取り終わったら、ulimit -c 0で、設定オフにしないと、dump吐き続けます。かなり容量食うので、ディスク圧迫します。取り終わったら、オフにしましょう。 私の環境では数日で、8Gくらい溜まってました。