システムの「見える化」とはこういう事か
[ENdoSnipe]S2JSFのパッケージ図を自動生成
こちらで紹介しているように、
ENdoSnipe Ver. 4.0ではクラス図に自動パッケージ化処理を追加しています。
で、これを使うと結構楽しめます。
例えば、S2JSF Exampleだとこんな感じです。
org.seasar.frameworkパッケージを中心にして
s2jsfやteeda、s2daoやextensionパッケージが並んでいます。
せっかくなので、extensionパッケージを分離したパターンも作ってみました。
処理時間が長いクラスから順に、赤、黄と表示されるので、
パッケージの中で(性能的に)重要なクラスが目立ちます。
こんな並べ方もありですね。
綺麗な五角形になりました。
ちなみに、S2Containerの中はこう見えます。
まあ、既知のフレームワークだから、という面もあるとは思いますが、
イメージだと、システムの構成を捉えやすい気がしますね。
今後、いろいろと知らないフレームワークも試してみたいところです。
■
[ENdoSnipe]見えてきたENdoSnipeの使いどころ。
お久しぶりの更新です。
(毎回これですね。すみません。)
前回はVer. 3.4の製品発表についてでした。
現在、5月末に控えたVer. 4.0のリリースを控えて機能Fixを急いでいます。
あれから1年ほど経ちました。
様々な方に使って頂きましたが、
その中で、「ENdoSnipeとは何ぞや?」という所が、
自分の中でも明確になってきた感じがします。
その一つが結合試験工程での性能障害検出ツールというもの。
プロファイラはオーバヘッドが高すぎるため、
結合試験工程では有効な性能測定方法が無く、困っている方も多いでしょう。
プロファイリングを行うにはマシンの占有が必要なため、
スケジュールが押してくると深夜や週末に行う方も多いはず。
オーバヘッドが低いENdoSnipeは、他の開発者の機能試験を妨げませんし、
まさにその機能試験から、性能問題を検出する事ができます。
実際、性能障害の解析にENdoSnipeを適用したら、
同じマシンで開発が行われていた別機能の問題を見つけた、という事がありました。
障害解析に必要な情報も含まれているので、非常に効率的です。
手前味噌ですが、ずいぶんと使えるツールになってきています。
試してみたい方は、ぜひこちらからお問い合わせを。
■
[ENdoSnipe]製品発表しました。
お久しぶりの更新です。
いろんなところで報じられてますが、先週金曜日、ENdoSnipe Ver. 3.4をリリースしました。
エスエムジー、Javaシステムの診断ツール「ENdoSnipe」の新版をリリース
トラブル解決のノウハウを盛り込んだJavaシステム診断/改善ソフトを発売
Javaシステムのパフォーマンス診断ツールを提供開始
3つの機能でJavaトラブルを“見える化”するツール
この製品の目玉はもちろん、「3つの見える化」にあるんですが、中でも特筆なのがPerformanceDoctorです。
その名の通り、システムの性能問題を見つけ、診断して原因を教えてくれます。
すでに実際のトラブルシュートで活用してるんですよ。
SMGのサイトでも当日の模様を公開しています。
「ENdoSnipe」一般販売開始
ENdoSnipe製品発表会
当日の資料はこちらからダウンロードできます。
ぜひ、御覧ください。
ENdoSnipe Ver3.4の紹介
それにしても、これまで長かった。
JDBCJavelinをお披露目しました
気がつくと日記の書き方を忘れてしまいそうな感じなのが情けないところですが、しっかり生きてます。
というわけで、昨日のSeasar Conference 2007 Autumunで、S2JavelinとArrowVisionの新バージョンとJDBCJavelinについて、発表させて頂きました。
今回の目玉は何といっても、JDBCJavelinです。
S2に刺さるからS2Javelin、JDBCに刺さるからJDBCJavelinというわけで、こんな感じで、StatsVisionの画面で、LogicやDaoなどのコンポーネントに並んで、データベースを表示します。
もちろん、メソッドの部分に表示するのは、データベースに対して発行したSQLです。
トラブルシューティングのリクエストが多いのがパフォーマンスチューニングなんですが、その原因、DB周りが非常に多いですね。
だから、少しでも、DBが苦手なエンジニアにも、解析してもらえるように作りました。
最近はO/Rマッパーが大活躍して、DBに裏でアクセスしたり、SQLを自動生成したりしますが、そこまで見えるのも面白いところです。
上の図でも、S2Daoがメタデータにアクセスしているクエリも出てますね。
だから、S2JDBCとも相性ばっちりなはずです。
もちろん、ArrowVisionでシーケンス図にもなります。
詳細ビューにはSQLや実行計画まででます。
JDBCJavelinの入手方法など、詳しくは、Seasar Conference 2007 Autumunの資料を参照ください。
多くの方に使って頂きたいので、よろしくお願いします。
ArrowVisionの使い方
同僚のid:KenichiroMurataがArrowVisionの紹介をしてくれました。
今回の目玉の更新ポイントがわかります。
参考にして下さい。
(ありがとう、むらけん。)
で、大きな改善は紹介されちゃったので、小さな変化を書いておきます(^^;
-
- メッセージが重なった時の表示が自然になった。
- シーケンス図でノードを移動した時にキャンバスが自動で拡大する。
- シーケンス図でメッセージを選択すると、ツールチップテキストにDurationが出る。
と、細かい改善もいくつかやっておりますので、いろいろと探してみて下さい。