こいつは軽くヤバい、YouDebug。
JavaのBCIとかオンデマンドアタッチ(Attach API)じゃなく、
デバッガAPIでホゲればJava1.4でも使えるから便利だゼとかっていう
アイデアだけはあったんですが、川口さんが形にしたようです。
YouDebugはデバッガであると同時にデバッガではありません。YouDebugは、Java Platform Debug Architecture上に作られているので、他のプロセスにアタッチしたり、変数を参照したりブレークポイントを設定したりと、デバッガができる全ての事ができます。そういった意味では、YouDebugはデバッガです。
しかし、YouDebugには対話性がなく、ソースコードも必要ありません。プログラマがGUIとマウスを使って駆動するわかりに、YouDebugはDSLライクなGroovyスクリプトを使って駆動されます。これによって、プログラムに関する知識を持ちスクリプトを書く人と、プログラムに関する知識を持たずスクリプトを走らせる人との分業が可能になるわけです。
非対話的デバッガ YouDebug - 川口耕介の日記
コレは凄い。
今すぐ仕事に使いたいレベル。
特にJava1.4環境で、Eclipseの持ち込みやリモートデバッグが困難な環境など、
「他のツールを使いにくい」場面で威力を発揮しそうですね。
ちなみに、BTraceもそうですが、
こういうプログラム(スクリプト)を伴うトラブルシュート用ツールは、
使いこなすために、一定のスキルが必要なんですよね。
要するに「自分が追いたい問題をきちんと自覚している」こと、
言い換えれば「問題箇所を見抜いている」こと、
あるいは「仮説を立ててから検証する」ことでしょうか。
エンジニアには必須のスキルだとは思いますが。
とりあえず、使ってみます。