Acroquest Technologyは2013年7月11日、Javaシステムの内部動作を可視化・診断するソフトウエア「ENdoSnipe Ver.5.0」をオープンソースとして公開したと発表した。Ver.4まではプロプライエタリな製品だった。ダウンロード・サイトおよびGitHubのページからダウンロードできる。
新版の診断機能には、同社が提供するJavaシステムのトラブルシューティング・サービス「JaTS」での障害解析のノウハウを組み込んだという。アプリケーションの性能を監視する機能も追加した。従来版はEclipseプラグインとしてユーザーインタフェース(UI)を実現していたが、新版はWebベースのUIに変更されている。
診断機能では、メモリリークやハングアップリスク、非効率なデータベース・アクセスなどを検出する。プロファイラやデバッガとは異なり、問題が発生する具体的な理由まで指摘できるという。例えば「複数のスレッドから同時にHashMapにアクセスしている」という現象を検出し、「無限ループやデータ破損が起こる可能性がある」という問題を指摘できる。
可視化機能も充実している。収集したデータはDashboardに表示する。CPU使用率やヒープ・メモリの使用量といった一般的な情報に加え、Listオブジェクトの数、ディスクI/OやネットワークI/Oに関する情報などをグラフ表示できる。グラフをExcelのデータとして出力することも可能だ。Java VMが備えるBCI(Bytecode Instrumentation)という機能を利用することで、ソースコードを書き換えることなくクラスを書き換えて内部の詳しい情報を取得している。
Web UIでは新たに「閾値判定機能」と「マップ機能」が追加された。閾値判定機能では、対象のデータと閾値を指定することで超過判定を行い、結果をシグナルの色で表示する。マップ機能は、ユーザーが独自のDashboardをデザインできるもの。グラフやシグナル、他のマップへのリンクを任意の位置に配置できる。
同社は、有償で各種サービスを提供する。年間サポート費用は、物理CPUコア当たり2万円。利用方法についてメール、Webサイト、電話などでサポートを提供する。トレーニング・サービス、導入サービス、同ソフトの測定結果を基にした診断サービスも用意している。
[発表資料]