JavaVMが死ぬ瞬間の情報を出来るだけ取りたい。
[BOF-4870]JSR326: Diagnosing Deadly Java Platform Problems - Future of Java Technology Forensics
JSR 326(Javaの診断機能)のBOF。
このBOFは、JSR 326のスペックリードであるSteve Pooleがスピーカーで、
この人はApache Katoっていうプロジェクトの中の人でもある。
大半の人にはJSR 326なんて興味ないんだろうけど、
ENdoSnipeを作ってる身としては、さすがに無視できないわけで。
いや、このセッションを聞くまで知りませんでしたけども。
JSR 326が掲げているのは「post mortem」(=検視)、
要するにJVMが死んだ原因を調査したりするために、
「スレッドやヒープのスナップショットの取り方や、解析の仕方を標準化する」
という内容のようだ。
デモでは、GUIツールでヒープダンプをドリルダウンしたり、
コマンドラインでxpathライクな構文を使ってヒープダンプから
情報を取得するなどしていた。
また、IBMの内部ツールで取ったスナップショットと、
hprofで取ったヒープダンプを、同じツール(=同じAPI)で解析する、
という事をしており、このような共通化のためにJSRを立ち上げているようだった。
トラブルシューティング屋さんは、ぜひApache Katoを見ておく必要があると思った。