2006年07月10日

Linuxでクラッシュダンプを採取(3) 〜 クラッシュダンプは何故とるの? 〜

はてなブックマークに登録

この数日間、Linux でクラッシュダンプを採取する方法について検証していますが、そもそも何故クラッシュダンプを取る必要があるのでしょうか。目的を見失ってしまうのは寂しいのでこのへんで少し確認しておきたいと思います。

クラッシュダンプを採取してできることってなんでしょう。
最も一般的で、かっこいい言い方をすると、

・不具合の原因を解析できる

これを聞いて「ええええっ・・」って思う人もいるでしょうね。
原理的には可能だとわかってはいても、実際にやるには気力と根性と感性と時間が必要です(笑)
そんな私も「Linuxカーネルの解析ができますっ!」なんてとても言えたものではありません。

それなのに何故クラッシュダンプを採取しようとしているか・・・

それは

・問題発生時に動いていたプロセスを知ることができる
・問題発生時にオープンしていたファイルを知ることができる
・問題発生時のロードアベレージなどを知ることができる
・問題発生時のログを採取することができる
・問題を引き起こしたプロセスが特定できるかもしれない
・某社の解析サービスなどを利用すると問題を特定できるかもしれない

「コード解析」まではいかなくても、これらの情報を採取できれば、サーバが落ちた原因がなんだったのか、何が悪そうなのかを推測することくらいはできそうだと思いませんか?実際のツールの使い方などは別の回にでも紹介できればと思いますが、少なくとも私は「クラッシュダンプは一部の技術者のためだけのもの」とは限らないと考えています。

また、クラッシュダンプを採取する仕組みを整えておくと、「その世界に精通しているおにいさんたち」にお願いして原因を見つけてもらったり(VALinuxさんが有名?)、自分で解析にチャレンジしてソースを読むきっかけになったり、今まで知らなかった世界を切り開けたり(?)と、結構いいことがあるものです。

最近では、ミラクルリナックスの武田さんが「路地裏 ソース解読研究所」で、ダンプ解析の手法を紹介してくれていますので、興味のある方は覗いてみてはいかがでしょうか。

カーネルを覗いてみよう
ダンプ解析に必要なもの
カーネルダンプのスタック情報

こちらのサイトには影ながらお世話になっています(^^;
今後の展開が非常に楽しみです。
klab_gijutsu2 at 23:14│Comments(0)TrackBack(0)

トラックバックURL

この記事にコメントする

名前:
URL:
  情報を記憶: 評価: 顔   
 
 
 
Blog内検索
Archives
このブログについて
DSASとは、KLab が構築し運用しているコンテンツサービス用のLinuxベースのインフラです。現在5ヶ所のデータセンタにて構築し、運用していますが、我々はDSASをより使いやすく、より安全に、そしてより省力で運用できることを目指して、日々改良に勤しんでいます。
このブログでは、そんな DSAS で使っている技術の紹介や、実験してみた結果の報告、トラブルに巻き込まれた時の経験談など、広く深く、色々な話題を織りまぜて紹介していきたいと思います。
最新コメント