2008-06-01から1ヶ月間の記事一覧
先週の金曜日に、ENdoSnipeの製品発表会を行ないました。 ありがたいことに、IT系ニュースサイトでも取り上げて頂いております。 8年蓄積したノウハウをパッケージ化して一般発売開始、エスエムジー 3つの機能でJavaトラブルを“見える化”するツール -- @IT S…
やっぱり、SAStrutsにBTraceが刺さらない問題の原因は HSQLDB云々ではなく、BTraceが生成するクラスのようです。 Listのaddをフックしてみるシンプルなスクリプトを書きました。 import static com.sun.btrace.BTraceUtils.*; import com.sun.btrace.*; impo…
As always, what makes an open source product really interesting is its plugin architecture and the catalog of additional features it brings. http://blogs.sun.com/alexismp/entry/visualvm_btrace_and_glassfish なんかね、当たり前のことなんだけ…
btraceのdumpオプションを有効にして出力した.classファイルを Javaでクラスロードしてみました。 import java.io.File; import java.io.FileInputStream; public class LoadClass { public static void main(String[] args) throws Exception { File file =…
dumpClassesオプションをtrueにして SAStrutsのサンプルにBTraceを掛けると Tomcatのbinに「org\hsqldb\jdbc」ディレクトリが出来て、 その中に「jdbcConnection.class」が出来上がります。 早速、このクラスに対してjavapを掛けてみると java.io.EOFExcepti…
仕方ないのでBTraceのソースをCVSから取ってきてチョコチョコ見てたら debugオプションがありました。 btrace.batを見ると、以下のようなオプション指定が見つかります。 -Dcom.sun.btrace.dumpClasses=false -Dcom.sun.btrace.debug=falsedumpClassesオプシ…
BTraceの問題をBTraceで解決しようと息巻いて、 sun.instrument.InstrumentationImpl.retransformClasses にBTraceを掛けようとしたのですが、ダメでした。 1. BTrace → Tomcat BTraceにretransformClassesへのフックを追加で書いたのですが タイミングの問…
btraceコマンドのオンデマンドアタッチが悪さして エラーが出てるんじゃないかと推測して、 Tomcatの起動オプションに-javaagentでBTraceを指定して 起動してみたのですが、出てくるエラーは変わらず。
BTraceの実践的な使い方は、作者のblogで紹介されています。 BTrace in the real world -- A. Sundararajan's Weblog これを動かそうとした所、コンパイルエラーが発生して正常動作しませんでした。 以下のような修正を行なったところ、コンパイルエラーがな…
BTraceクラスの実行タイミングを決めるためには、 実行メソッドに @On から始まるアノテーションをつけておきます。 一番使われることが多いのは @OnMethod でしょう。 @OnMethodでは、クラス名、メソッド名を指定できますが、 ユーザーガイドによれば スラ…
HSQLDBのJDBCドライバを使って、簡単なSQLを実行するコードを自前で書いて動かし、 そこに上のJdbcQueries.javaを刺してみた所、問題なく動きました。 とすると、java.sqlに刺すことができないのではなく、 何か特定の実装との相性が良くないみたいですね。
なんだよ、制限多すぎじゃないか、ガッカリだ。 なんて思われるかもしれませんが、というか僕も思いましたが、 それを覆すだけの力を持っているのが、BTraceのライブラリ、BTraceUtilsです。 BTraceUtilsは、唯一BTraceから呼び出す事の出来るライブラリで、…
BTraceは、メソッドのIn/Outや、エラー発生時、あるいは定期実行など いくつかのタイミングで、処理を埋め込む事ができる、とても便利なツールです。 しかも流行りの(しかしググっても全然ヒットしない)オンデマンドアタッチと BCIを使っているので、アプ…
https://btrace.dev.java.net/source/browse/btrace/docs/usersguide.html?rev=1.1.1.1 BTraceのUser's Guideによると、 btraceコマンドは、引数のファイル名の拡張子が「.java」なら その場でコンパイルを行なって、実行してくれるようです。 上のエントリ…
BTrace means best trace -- よねのはてな くっそー! ということで、まずはBTraceを動かせる所までを紹介します。 https://btrace.dev.java.net/ ここからBTraceのバイナリをダウンロードして解凍します。 解凍後、取り回しやすくするために、 binディレク…
JavaOne2008で、一番行きたかったセッション。 それが [BOF 5552]BTrace: Java Platform Observability by Bytecode Instrumentation でした。 いやほら、僕とかってS2Javelinコミッタじゃないですか。 多少はコミットしてるし、合宿とかでもコード書いてる…
先日のJavaOne報告会で、 プロジェクタにOpenSolarisの画面を映せなかった、 なんてトラブルがあったのですが、 その翌々日に、同僚から「xrandr使うんだよ」と教わりました。 ということで、xrandrコマンドをお勉強しながら触ってみる (^^; xrandr 接続でき…
あまり話題にはなってないようですが いまヤマダ電機でSoftBankにMNPすると 15%のポイントがつきます。 一括じゃなきゃポイントがつかない店が多いなか 割賦で購入してもオッケーで、しかもスパボ適用前の金額にポイントがつきます。 つまり、約10万円の15%…
ディズニーランドに来てるんですが、夕方にホテルに引き上げて 気絶して、気づいたらヤマダ電機のSoftBankコーナーで インターネットマシン922SHに機種変してました。 いいですね、これ。 レスポンス良いし、軽いし、結構打ちやすい。 もちろん、このエント…
エスエムジーの亀田大輔氏(オブジェクトフレームワークディヴィジョン エンジニアリングクリエータ)は,「JaTSのサービス提供を通じて,Javaアプリケーションのトラブルで困っているITエンジニアが多いことを実感した。同じITエンジニアとして,トラブル解…
言ってませんけどね。 JSR-315ではServlet3.0の仕様を定めており(中略) 設定なしに接続可能にする、という目標を達成するために、この仕様では以下のような新しい仕様を提案している。 1. 追加アノテーション: (中略) 2. web.xml フラグメントのサポート: (…
、、、という手順で一通り動いたかと思います。 ただ、なぜか、いまの私の環境では、 メソッド呼び出しと、オブジェクト生成の片方しか DTraceで取得できなくなっています。 先のHotSpotエラーの件を含め、私もあまりよく調べてないのですが(おいおい) 引…
これで全ての準備が整いました。 さぁ、D-Lightをはじめましょう!(インストール直後の画面の翻訳風) $ /opt/SunStudioExpress/bin/sunstudio/ これでSun Studio Expressが起動します。 Sun Studioが起動したら、メニューの「Tools」から「D-Light Tool」…
ところで、DTraceを利用するのは良いとしても、 トレース対象のアプリケーションを用意しなければいけません。 Javaを使ったアプリケーションであれば、何だって構わないのですが、 ここでは、JavaOne報告会でも使った「みそれん」を試しましょう。 みそれん…
さて、続いてはDTraceを動かすための設定をしましょう。 DTraceを動作させるためにはroot権限が必要になりますが、 いちいちsuするのも面倒ですから、 各ユーザにDTraceの実行権限を与えておくと良いでしょう。 $ su - # vi /etc/user_attr これで開いたファ…
OpenSolarisをインストールしたら、次はJavaとSun Studio Expressのインストールです。 DTraceは最初からOpenSolaris本体に組み込まれているため、インストールの必要はありませんが D-LightはSun Studio用のプラグインであるため、これらのインストールが必…
昨日はこどもの国から帰国(?)した後、ぐっすりと寝てしまったので、 お伝えできませんでしたが、気を取り直して、、、JavaOne2008報告会懺悔シリーズ! OpenSolarisのインストールから、Sun Studio Express上のD-Lightで DTraceをビジュアル化する所まで…
ごめんなさい、ごめんなさい、ごめんなさい、 DellのXPSに入れたOpenSolarisが、プロジェクタでは映りませんでした(><) そのため、肝心のOpenSolaris + DTrace + D-Lightのデモが出来ず。 なので、デモするまでの手順をここに書きます。 ちょっと今日は…