アプリケーションのパフォーマンス監視と問題診断ソリューションソフトウェアである JXInsight の最新版 (リンク)では、Java アプリケーションのためのアクティビティベースの計測ソリューションと JMX 統合をサポートする。JInspired 開発チーム(リンク)は最近、JXInsight 5.7 バージョン (通称 "Excel") のリリースを発表した(リンク)。
ABC (活動基準原価計算: Activity-Based Costing) モデルでは、エンタープライズ アプリケーションのアクティビティ (活動) を特定し、各リソースの実際の消費量に基づいて、各アクティビティ リソースのコスト (原価) をすべての製品およびサービスに割り当てる。JXInsight プローブ(リンク)は、リソース消費量に基づき、コストをアプリケーション、サービス、およびコンポーネントに割り当てる ABC ソリューションを提供する。プローブ ランタイム コンポーネントは、アプリケーション、サービス、およびコンポーネントによるリソースの使用量を計測する。これにより、IT サービス管理において、パフォーマンス管理とコスト管理の両ドメインの主要業績評価指標 (KPI: Key Performance Indicators) が 1 つの管理モデルに統合される。
JXInsight の ABC ソリューションには、次のパフォーマンス監視および管理機能が組み込まれている。
- 動的グループ タグ:
タグを使用すると、アプリケーション、ユーザー、ビジネス トランザクション、Web ページの名前など、実行フローの動的な側面をより反映させた実行コンテキストに基づき、追加のコスト センター階層を作成できる。タグは、現在の実行に関するアプリケーション レベルのコンテキストをソフトウェアから伝える方法であり、プローブ ランタイムのさまざまな拡張から使用できる。サービス管理チームは、システムの観点からこれまでどおり課金しながら、計測された共有リソース使用量に対して顧客 (組織、部署、またはユーザー) に課金できるようになる。 - カスタム リソース メーター:
システム管理者は、既存のリソース計測データに基づく独自のカスタム メーターを作成できる。この機能により、管理者は特定のグループ (コスト センター) について計測されたリソース使用量を、直接または間接的にコストに関与する他のグループ (コスト センター) と明確に関連付けることができる。この課金は、あるグループ (コスト センター) 内での計測コストを他のグループによって分解・分析する方法になる。 - 計測方針:
プローブ ランタイム コンポーネントを使用すると、さまざまな計測方針に適応したコスト管理ソリューションを作成できる。新バージョンには、Busy、BusyThread、および HighMemory という 3 つの新しい計測方針が組み込まれている。Busy 計測方針では、スレッドまたは管理対象プロセスが一定期間、常に高い CPU 使用率を示すと計測が開始される。HighMemory 計測方針では、高いヒープ メモリ使用率が続くと計測が開始される。
JXInsight の新リリースでは、新しいプローブ管理プロバイダ拡張 MBean (GroupMBean と MeteringMBean) を含む JMX (リンク)統合もサポートされている。これらの MBean は、すべての計測されたプローブの "グループ" および作成された関連リソースの "計測" のためにローカル MBeanServer (リンク) に登録される。この JMX サポートでは、新しい Oracle Coherence 管理統合拡張プローブ関連の MBean によって Oracle Coherence(リンク) も統合される。この MBean は、どのグリッド ノードからもすべての計測またはグループを監視できるように、Oracle Coherence グリッド全体の管理および監視 (JMX) フレームワークに登録される。
最新リリースには次の新機能も組み込まれている。
- Java 6 サポート:
JXInsight の Java 6 (リンク)ランタイムは、Java SE 5 ランタイム環境での JVMPI エージェント(リンク)に代わる新しい JVMTI エージェント(リンク)によってサポートされるようになった。Java 1.4 ランタイム(リンク)はこのリリースでも現在まだサポートされているが、今後のメジャー アップデートではサポートされない。 - Java ロギングの統合:
新しいロギング プローブ プロバイダ拡張を有効にし、メーターのログ レベル単位で定義された特定の閾値の超過を読み取ったリソース メーターごとに LogRecord (リンク)を公開するよう構成できる。これは、アラートの生成と障害の検出のため、ログ ファイルの常時スキャン機能を備えた従来のシステム監視ツールと統合する上で役立つ。 - Azul Systems リソース メーター
Azul Systems コンピュート アプライアンス(リンク)は、特殊なプローブ メーター統合拡張パックによってサポートされる。この統合により、Azul クライアント/プロキシ JVM までのネットワーク往復を必要とする他のプロファイリング ソリューションと異なり、リソース計測はコンピュート アプライアンス内でローカルに実行される。 - JRuby-to-Ruby プローブ拡張:
JXInsight 5.7 は、JRuby (リンク)拡張によるクロス JVM 言語のリソース計測および課金ソリューションを実現している。新しい JRuby-to-Ruby プローブ拡張により、計測データは Java と Ruby (リンク)の実行境界を越えて収集および追跡される。
JXInsight の最新バージョンには、他の言語、ランタイム環境、またはプラットフォームに移植できる API も付属している。アスペクト指向ランタイムのメモリ フットプリントはアプリケーションに対して減少し、さらにプローブ計測スナップショット用のメモリ フットプリントとファイル ストレージ サイズも減少した。
今週の初めにリリースされた JXInsight 5.7 には 2 番目のアップデート(リンク)も含まれる。このアップデートでは、ノンリエントラント (再入不可) およびコンカレント (並列) という 2 つの新規プローブ プロバイダが導入されている。ノンリエントラント プローブ プロバイダは、指定したプローブの再帰的な実行 (呼び出し) をフィルタで除外する。コンカレント プローブ プロバイダは、ボトルネックとして考えられる要求処理パイプライン内の実行ポイントの識別に役立つ。
JXInsight は、リソース計測ランタイム環境を提供するアプリケーション ライフサイクルに及ぶソリューションである JInspired の XPE (Extensible Software Performance Engineering) に含まれる。XPE(リンク) は、人間と製品をソフトウェア パフォーマンス エンジニアリング プロセスに統合するための方法を示すサービス提供フレームワークと共に、ソフトウェア パフォーマンス管理のための方法を導入する。
InfoQ は、プロジェクトの現在の機能と将来のロードマップについて、JXInsight 製品設計者である William Louth にインタビューした。新しい ABC (活動基準原価計算) 機能を推進してきた主要因は何だったかという質問に答えて、William は次のように語った。
「このプローブ ランタイムの設計時に、リソース メーターを無制限にサポートすることを決定しました。これは、他のほとんどのアプリケーション パフォーマンス管理やプロファイリング ツールでの標準アプローチである、単なるクロック時間または CPU 時間ではありません。このような柔軟な設計により、1 つ以上の未知のアクティビティ (スレッド + コンテキスト) ベースのカウンタの計測 (KPI) を通して、企業がどのようにソフトウェアを管理したいかという観点からソフトウェア実行を計測できるようになりました。KPI (主要業績評価指標) では詳細に実行コンテキストをレポートしていることに注目してください。ほとんどのソフトウェアはパフォーマンス テストやソフトウェア アクティビティ分析が不十分なまま運用されるので、システム レベルのレポートは、状態の監視や多少の容量計画にしか利用できません。
クラウド コンピューティングが登場するとすぐ、このリソース使用量の計測にはもう 1 つの重要な管理側面 (コスト) があることに気付きました。監視対象のソフトウェア アクティビティごとのリソース使用量追跡機能はすでに存在していたので、必要なのは、サービス管理およびコスト管理の両方の観点からもアプリケーション監視が可能なコスト モデルを導入する方法でした。環境は整っていました。リソース メーターはコスト ベースで、ランタイム内でアクティブ化される 1 つ以上のリソース メーターから引き出すことができました。続いて、顧客がクラウド コンピューティング コストをこれまでどおり監視できるように複数のコスト メーターのサポートを導入しながら、1 つ以上の追加コスト モデルを用意して、入金相殺方式や運用コスト管理に対応しました」
SLA ベースのサービス監視および管理作業において、ABC は SOA 設計者と開発者にどのように役立つか。
「多くの大企業でクラウド コンピューティングおよびグリーン コンピューティング イニシアティブへの関心が高まるにつれて、ソフトウェア アクティビティに対するリソース消費量の適切な追跡機能を備えたメカニズムの提供を、多くのサービス指向設計者が求められるようになっています。ソフトウェア ベースのサービスで実行されるコンピューティング アクティビティはリソースを消費します。したがって、アクティビティを管理すれば、コストをその発生源で管理できます。
IT の外側で ABC を採用する際の最大の課題の 1 つは、どのアクティビティがパフォーマンスであり、リソースはどのように消費されるかという決定に費やす時間です。SOA ベースのアプリケーションとサービスでは、このカタログは既に収集されています。必要なのは、サービスそのものによって実行される 1 つ以上のアクティビティを基に、リソース使用量によってコストを動的に割り当てる方法だけです」
新機能および機能拡張に関する、JXInsight プロジェクトの将来のロードマップはどのようなものか。
「今後数か月のうちに 2 つの新しいメジャー リリースを予定しています。2009 年第一四半期に予定している最初のリリースでは、現在のアプリケーション管理および監視製品にこれまで存在してきた、システム監視モデルとソフトウェア監視モデルの断絶に対応します。システム監視とソフトウェア監視をシームレスに切り替えるという目標を達成するため、新しい Open API である Metrics を公開し、システム イベント カウンタなどの基盤となっている測定機能へのバインドによるメトリクスの動的な登録をサポートします。現在の製品にもこの機能は、すでにある意味で存在し、ほとんどの一般的なプラットフォーム用のマッピングが付属していますが、大部分は静的で構成ベースです。このメジャー リリースでは、ほとんどのメトリクス ランタイムは動的になり、Java 以外のシステム (つまり、Oracle データベース) からもプロキシ エージェントによってメトリクスを提供できるようになります。
2009 年第二四半期に予定している 2 番目のリリースでは、運用ダッシュボード設計に動的かつ拡張可能な視覚化記号言語による革新的な新しいアプローチを導入します。この言語は、将来予測される問題の自動検出のためにシステムとソフトウェアの状態および動作パターンをレンダリングし、体系的にまとめるために使用します」
原文はこちらです:http://www.infoq.com/news/2008/12/jxinsight-5.7-release