タグ

ブックマーク / mir.hatenadiary.org (1)

  • disassembleによるデバッグの方法 - mir the developer

    開発環境でのバイナリやデバッグバイナリではないもの、すなわち、 障害解析対象のプログラムは-gが付いていない(プロダクション用なら当然) というようなバイナリからとれたstacktraceを手がかりにsignal 11の位置を特定する方法について書きます。 (以前よりも少しやりかたを改善できたのでメモしておきます。もっと簡単にできる方法があればコメント下さい) 16進数のstacktraceを確認 まずエラーログを見る。mysqldの場合はエラーログにstacktraceを吐いてくれるので別にcoreファイルがなくても大丈夫。吐いてくれないプログラムの場合は"ulimit -c unlimited"でcoreを出すようにしておいてbtする。 こんな感じの16進数のstacktraceが取れる。 0x5c4ceb 0x6267de 0x626e63 ...hoge.logとでもしておく。 バ

    disassembleによるデバッグの方法 - mir the developer
  • 1