Oracle® Fusion Middleware

Oracle Coherenceのマネージメント

12c (12.1.2)

B70745-02(原本部品番号:E26038-02)

2013年11月

開発者およびシステム管理者向けのドキュメントであり、Java Management Extensions (JMX)の管理対象Bean (MBean)を使用したOracle Coherenceの管理方法およびOracle Coherenceレポートについて説明しています

Oracle Fusion Middleware Oracle Coherenceのマネージメント, 12c (12.1.2)

B70745-02

Copyright © 2008, 2013, Oracle and/or its affiliates. All rights reserved.

原本著者:  Joseph Ruzzi

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントが、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供される場合は、次のNoticeが適用されます。

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle America, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

このソフトウェアまたはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアまたはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用する際、このソフトウェアまたはハードウェアを安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleおよびJavaはOracle およびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXはThe Open Groupの登録商標です。

このソフトウェアまたはハードウェアおよびドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。

目次

タイトルおよび著作権情報

はじめに

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

このガイドで説明する新機能

- 12c (12.1.2)での新機能と変更された機能

- 12c (12.1.2)に関するこのドキュメントにおけるその他の大きな変更

1 Oracle Coherence管理の概要

- 1.1 Oracle Coherence管理の概念の概要

- 1.2 Oracle Coherenceの管理レポート

- 1.3 管理構成の概要

- 1.4 Oracle WebLogic ServerによるOracle Coherenceの管理

- 1.5 Oracle Enterprise ManagerによるOracle Coherenceの管理

2 JMXを使用したOracle Coherenceの管理

- 2.1 JMX管理の構成

- 2.1.1 クラスタ・メンバーでのリモートJMX管理の有効化

- 2.1.2 クラスタ・メンバーでのローカルJMX管理の有効化

- 2.1.3 起動スクリプト使用時のJMX管理の有効化

- 2.1.4 クラスタ・メンバーのリモート管理の停止

- 2.1.5 JMX管理の無効化

- 2.1.6 MBeanのフィルタ処理

- 2.1.7 管理情報のリフレッシュの構成

- 2.1.7.1 管理情報のリフレッシュ失効の設定

- 2.1.7.2 管理情報のリフレッシュ・ポリシーの設定

- 2.1.7.3 管理情報のリフレッシュ・タイムアウトの設定

- 2.1.8 既存のMBeanサーバーの使用

- 2.2 Oracle Coherence MBeanへのアクセス

- 2.2.1 Java VisualVMを使用したMBeanへのローカルでのアクセス

- 2.2.2 JConsoleユーティリティを使用したMBeanへのローカルでのアクセス

- 2.2.3 Oracle Coherence MBeanへのリモート・アクセスの許可

- 2.2.4 HTMLアダプタ・アプリケーションを使用したMBeanへのアクセス

- 2.2.5 Oracle Coherence MBeanコネクタの設定

3 カスタムMBeanの登録

- 3.1 カスタムMBeanの登録の概要

- 3.2 カスタムMBeanの宣言的な登録

- 3.2.1 MBean構成ファイルの作成

- 3.2.2 クラス名を使用したMBeanの登録

- 3.2.3 MBeanファクトリからのMBeanの登録

- 3.2.4 問合せを使用したMBeanの登録

- 3.2.5 別のMBean構成オーバーライド・ファイルの指定

- 3.2.6 MBeanのローカルMBeanサーバーへの制限

- 3.3 カスタムMBeanのプログラム的な登録

4 Oracle Coherenceのレポート機能の使用

- 4.1 Oracle Coherenceのレポート機能の概要

- 4.2 クラスタ・メンバーでのOracle Coherenceのレポート機能の有効化

- 4.3 デフォルトのレポート・グループ構成ファイルの切替え

- 4.4 レポート・グループ出力ディレクトリのオーバーライド

- 4.5 レポートのタイムスタンプ・フォーマットの変更

- 4.6 Reporter MBeanを使用したOracle Coherenceのレポート機能の管理

- 4.7 分散構成でのOracle Coherenceのレポート機能の実行

5 カスタム・レポートの作成

- 5.1 カスタム・レポート作成の概要

- 5.2 レポート構成ファイルの作成

- 5.2.1 レポートの一般的な特性の指定

- 5.2.1.1 file-nameマクロ

- 5.2.1.2 file-nameマクロの例

- 5.2.2 レポート内のMBeanの問合せ

- 5.2.3 データ列の指定

- 5.2.3.1 属性の組込み方法

- 5.2.3.2 キー部分の組込み方法

- 5.2.3.3 複合属性情報の組込み方法

- 5.2.3.4 複数のMBean情報の組込み

- 5.2.3.5 複数のMBean情報を組み込む例

- 5.2.3.6 レポート・マクロの使用方法

- 5.2.3.7 定数値の組込み方法

- 5.2.4 レポートでのフィルタの使用

- 5.2.5 レポートでの関数の使用

- 5.2.5.1 関数の例

- 5.2.6 レポートでの集計機能の使用

- 5.2.7 デルタ関数の作成

- 5.2.7.1 デルタ関数の例

- 5.3 カスタム・レポート・グループ構成ファイルの作成

- 5.3.1 レポートのリフレッシュ頻度の指定

- 5.3.2 レポートの出力ディレクトリの指定

- 5.3.3 レポート・リストの指定

- 5.4 生成するカスタム・レポートの構成

6 レポート内容の分析

- 6.1 キャッシュ・サイズ・レポートの理解

- 6.2 キャッシュの使用レポートの理解

- 6.3 フラッシュ・ジャーナル・レポートの理解

- 6.4 管理レポートの理解

- 6.5 メモリー・ステータス・レポートの理解

- 6.6 ネットワーク・ヘルス詳細レポートの理解

- 6.7 ネットワーク・ヘルス・レポートの理解

- 6.8 ノード・リスト・レポートの理解

- 6.9 プロキシ・レポートの理解

- 6.10 RAMジャーナル・レポートの理解

- 6.11 サービス・レポートの理解

A Oracle Coherence MBeanのリファレンス

- CacheMBean

- ClusterMBean

- ClusterNodeMBean

- ConnectionManagerMBean

- ConnectionMBean

- FlashJournalRM

- ManagementMBean

- PointToPointMBean

- RamJournalRM

- ReporterMBean

- ServiceMBean

- StorageManagerMBean

- TransactionManagerMBean

B レポート・ファイル構成要素

- B.1 レポート・ファイル・デプロイメント・ディスクリプタ

- 要素リファレンス

- column

- filter

- filters

- params

- query

- report

- report-config

- row

C レポート・グループ構成要素

- C.1 レポート・グループ構成デプロイメント・ディスクリプタ

- 要素リファレンス

- init-param

- init-params

- report-config

- report-group

- report-list

はじめに

Oracle Coherenceのマネージメントでは、Java Management Extensions (JMX)の管理対象Bean (MBean)を使用したOracle Coherenceの管理方法およびOracle Coherenceレポートについて説明します。

対象読者

このマニュアルは次のユーザーを対象としています。

- 主な対象読者: Oracle Coherence環境の管理方法に習熟する必要があるアプリケーション開発者と管理者

- 二次的な対象読者: Oracle Coherence管理用のオプションとアーキテクチャについて理解しようとしているシステム・アーキテクト

対象読者は、このガイドを効果的に使用するためには、JavaとJMXについてよく理解している必要があります。また、このガイドに示す例では、Oracle Coherence製品をインストールして使用することが必要です。

ドキュメントのアクセシビリティについて

オラクル社のアクセシビリティへの取組みの詳細は、Oracle Accessibility ProgramのWebサイトhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=docaccを参照してください。

Oracleサポートへのアクセス

Oracleのお客様は、My Oracle Supportにアクセスして電子サポートを受けることができます。詳細は、http://www.oracle.com/pls/topic/lookup?ctx=acc&id=infoまたはhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs (聴覚障害者向け)を参照してください。

関連ドキュメント

詳細は、次のOracle Coherenceドキュメントを参照してください。

- 『Oracle Coherence*WebでのHTTPセッション・マネージメントの管理』

- 『Oracle Coherenceの管理』

- 『Oracle Coherenceでのアプリケーションの開発』

- 『Oracle Coherenceリモート・クライアントの開発』

- 『Oracle Coherenceの統合』

- 『Oracle Coherenceの保護』

- 『Oracle Coherenceチュートリアル』

- 『Oracle Coherence Java APIリファレンス』

- 『Oracle Coherence C++ APIリファレンス』

- 『Oracle Coherence .NET APIリファレンス』

- 『Oracle Coherenceリリース・ノート』

表記規則

このマニュアルでは次の表記規則を使用します。

規則

意味

太字

太字は、操作に関連するGraphical User Interface要素、または本文中で定義されている用語および用語集に記載されている用語を示します。

イタリック体

イタリックは、ユーザーが特定の値を指定するプレースホルダー変数を示します。

固定幅フォント

固定幅フォントは、段落内のコマンド、URL、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。

このガイドで説明する新機能

次の各トピックでは、Oracle Coherenceの新機能と変更機能およびこのガイドで説明する主な変更について紹介し、追加情報へのリンクを示します。このドキュメントは、旧タイトル名『Oracle Coherence管理ガイド』の新版です。

12c (12.1.2)での新機能と変更された機能

Oracle Coherence 12c (12.1.2)には、このドキュメントに関して次の新機能と変更された機能があります。

- レポート出力システム・プロパティ: レポート・グループの出力場所を実行時にオーバーライドできます。「レポート・グループ出力ディレクトリのオーバーライド」および「レポートの出力ディレクトリの指定」を参照してください。

- クラスタ状態のログ操作: 指定したロールで実行されているクラスタ・メンバーのスレッドのフル・ダンプおよび未処理のポーリングをログ出力します。表A-4「ClusterMBeanの操作」を参照してください。

- ノード状態のログ操作: クラスタ・メンバーのサービスにおけるスレッドのフル・ダンプおよび未処理のポーリングをログ出力します。表A-6「ClusterNodeMBeanの操作」を参照してください。

- イベント・インターセプタ属性: ライブ・イベントの統計をレポートします。表A-17「ServiceMBeanの属性」を参照してください。

12c (12.1.2)に関するこのドキュメントにおけるその他の大きな変更

このガイドは12c (12.1.2)でいくつかの点が更新されました。次の表に、追加または変更された項を示します。

- 管理概要のマニュアルが改訂されました。「Oracle Coherence管理の概念の概要」を参照してください。

- 管理レポート概要のマニュアルが改訂されました。「Oracle Coherenceの管理レポート」を参照してください。

- CoherenceがWebLogic Serverドメインの一部としてデプロイされている場合に利用できる管理機能を説明する項が追加されました。「Oracle WebLogic ServerによるOracle Coherenceの管理」を参照してください。

- カスタムMBeanのプログラム的な登録の方法が改訂されました。「カスタムMBeanのプログラム的な登録」を参照してください。

- MBeanリファレンス付録が新しい属性および操作と更新された属性および操作のすべてを含むよう改訂されました。付録A「Oracle Coherence MBeanのリファレンス」を参照してください。

1 Oracle Coherence管理の概要

この章では、Oracle Coherence管理の概要について説明します。管理は、Java Management Extensions (JMX)を使用して実装されます。JMXは、Javaアプリケーションとサービスを管理および監視するためのJava標準です。JMXの詳細は、次のドキュメントを参照してください。

http://docs.oracle.com/javase/7/docs/technotes/guides/jmx/index.html

この章には次の項が含まれます:

- Oracle Coherence管理の概念の概要

- Oracle Coherenceの管理レポート

- 管理構成の概要

- Oracle WebLogic ServerによるOracle Coherenceの管理

- Oracle Enterprise ManagerによるOracle Coherenceの管理

1.1 Oracle Coherence管理の概念の概要

Oracle Coherenceでは、クラスタ管理用のJMXフレームワークが用意されています。このフレームワークは、MBeanサーバーをホスティングするように構成された1つ以上のクラスタ・メンバーに依存します。MBeanサーバーは、他のすべてのクラスタ・メンバーの管理対象オブジェクトを管理します。このフレームワークでは、どのクラスタ・メンバーからも管理情報にアクセスでき、JMXメンバーに障害が発生した場合はフォルト・トレラントになります。管理フレームワークは、デフォルトで無効になっています。MBeanサーバーをホスティングするクラスタ・メンバーを少なくとも1つ構成することで、管理フレームワークを明示的に有効化する必要があります。JMX管理を有効にする方法の詳細は、第2章「JMXを使用したOracle Coherenceの管理」を参照してください。

図1-1は、単一のクラスタ・メンバーに配置されているリモートMBeanサーバーで、クラスタ・メンバーとその管理対象オブジェクトが管理されている様子を示した概念図です。

図1-1 Oracle Coherence JMX管理

Oracle Coherence MBean

Oracle Coherenceの管理対象オブジェクトは、com.tangosol.net.management.Registryインタフェースを使用してMBeanサーバーに登録されます。このインタフェースはクラスタ化されたリソースの管理に特化したもので、基本的なJMX登録APIを抽象化しています。このインタフェースはJMXインフラストラクチャと密接に関係していますが、javax.management.*のクラスには依存していません。このインタフェースでは、JMXサービスと一緒に配置されていないクラスタ・メンバーのリモート管理がサポートされており、管理対象オブジェクトと一緒に配置されているかまたは離れているMBeanサーバーにOracle Coherence MBeanを登録できます。

付録A「Oracle Coherence MBeanのリファレンス」には、すべてのMBeanのリストがあり、管理対象リソースに対して公開されている個々の属性と操作が説明されています。一部の管理対象リソースには、各クラスタ・メンバーのインスタンスが1つしかありません。しかし、いくつかの管理対象リソース(CacheMBean MBeanなど)には、クラスタ・メンバーごとに複数のMBeanインスタンスがあります。さらに、MBeanは、少なくとも1つの管理対象リソースが運用されている場合にのみ登録されます。CacheMBean MBeanでは、MBeanの登録前にキャッシュが起動されている必要があります。

カスタムMBean

カスタムMBeanを、管理フレームワーク内で管理および監視できます。カスタムMBeanは、アプリケーション固有の動的MBeanまたは標準MBeanです。MBeanは、XMLファイルで宣言的に登録されるか、Registrationインタフェースを使用してプログラム的に登録されます。カスタムMBeanを登録することで、アプリケーションのMBeanをクラスタ内のどのJVM、メンバー、エンドポイントからも管理または監視できるようになります。カスタムMBeanの登録方法の詳細は、第3章「カスタムMBeanの登録」を参照してください。

MBeanコンソール

MBean対応コンソールであれば、Oracle Coherence MBeanとやり取りできます。JDKとともに配布されているJava VisualVMコンソールとJava Monitoring & Management Console (JConsole)が一般的に選ばれています。JMXリファレンス実装の一部として用意されているJMX HTML Adapter Webアプリケーションもサポートされています。これらのコンソールを使用したMBeanとのやり取りの詳細は、「Oracle Coherence MBeanへのアクセス」を参照してください。

1.2 Oracle Coherenceの管理レポート

Oracle Coherenceには、時系列の管理情報を表示する管理レポートが用意されています。このレポートは、Oracle Coherence MBeanで取得したデータで構成されるテキスト・ファイルです。レポートは構成された時間間隔で自動更新されるため、MBeanを監視するだけでは得られない履歴コンテキストが提供されます。このレポートでは、トラブルシューティングおよび計画に役立つ傾向が特定されます。

図1-2は、すべてのクラスタ・メンバーの管理情報に基づいて単一クラスタ・メンバーで生成される、管理レポートの概念図です。

図1-2 Oracle Coherence管理のレポート

多数の事前定義されたレポートが用意されています。これらのレポートをカスタマイズするか、必要に応じて新しいレポートを作成できます。レポート機能はデフォルトでは無効になっているため、明示的に有効にする必要があります。また、最初はレポートのサブセットのみが構成されて生成されます。レポート機能を有効にする方法の詳細は、第4章「Oracle Coherenceのレポート機能の使用」を参照してください。また、事前定義されたレポートの詳細は、第6章「レポート内容の分析」を参照してください。

1.3 管理構成の概要

管理は、複数の構成ファイルを使用して構成されます。構成に関する詳細は、『Oracle Coherenceでのアプリケーションの開発』を参照してください。該当するファイルは次のとおりです。

- オペレーション・オーバーライド・ファイル: tangosol-coherence-override.xmlファイルは、オペレーション・デプロイメント・ディスクリプタをオーバーライドします。このディスクリプタはクラスタのオペレーションおよびランタイム設定を指定し、データ管理サービスを含みます。管理設定は、<management-configノード内で定義します。すべての管理設定のリファレンスについては、『Oracle Coherenceでのアプリケーションの開発』を参照してください。

- MBean構成オーバーライド・ファイル: custom-mbeans.xmlファイルはデフォルトのMBean構成オーバーライド・ファイルです。カスタムMBeanを宣言式に定義します。カスタムMBeanはオペレーション・オーバーライド・ファイル内にも定義できます。ただし、一般的にはカスタムMBeanではなくMBean構成オーバーライド・ファイルが使用されます。

- レポート構成ファイル: レポート構成ファイルでは、レポートを定義し、特定メトリックのセットに基づいて管理情報を表示するレポート・ファイルが作成されます。レポート構成ファイルは、実行時に使用されるレポート・グループ構成ファイルで参照される必要があります。デフォルトのレポート構成ファイルはcoherence.jarライブラリ・ファイルの/reportsディレクトリにあり、デフォルトのレポート・グループ構成ファイルによって参照されます。カスタムのレポート構成ファイルも必要に応じて作成できます。レポート・ファイル構成要素の詳細は、付録B「レポート・ファイル構成要素」を参照してください。

- レポート・グループ構成ファイル: レポート・グループ構成ファイルは、レポート定義ファイルの名前と場所、およびレポートが書き込まれる出力ディレクトリのリストを示します。このファイルの名前と場所は、オペレーション・デプロイメント・ディスクリプタに定義されます。デフォルトでは、report-group.xmlファイルが使用され、このファイルはcoherence.jarライブラリ・ファイルの/reportsディレクトリに存在します。追加のレポート・グループ構成ファイルが用意されています。さらに、カスタム・レポート・グループ・ファイルを必要に応じて作成できます。レポート・グループ構成要素の詳細は、付録C「レポート・グループ構成要素」を参照してください。

- 管理呼出しサービス・ファイル: management-config.xmlファイルは、Oracle Coherence JMX管理フレームワークで使用される管理呼出しサービス・インスタンスを構成します。このファイルはcoherence.jarライブラリ・ファイルのルートに存在し、クラスパスでcoherence.jarライブラリ・ファイルより前に別のmanagement-config.xmlファイルを置くことでオーバーライドできます。この構成ファイルはXSDで定義されません。ファイルには<configルート要素が存在する必要があります。また、<invocation-scheme要素で利用できる同じサブ要素をサポートします。管理構成ファイルの設定は通常変更されません。

1.4 Oracle WebLogic ServerによるOracle Coherenceの管理

Oracle WebLogic Serverには、Oracle WebLogic Serverドメイン内でのOracle Coherenceの管理方法を標準化するOracle Coherence統合が用意されています。この統合により、Oracle CoherenceがOracle WebLogic Serverのサブシステムになり、Oracle WebLogic Serverツールを使用したOracle Coherence環境の管理が可能になります。主な管理タスクは、次のとおりです。

- Oracle Coherenceクラスタの設定および構成

- Oracle Coherenceクラスタ・メンバーの追加と削除

- Oracle Coherenceクラスタ・メンバーのプロパティの構成

- Oracle Coherenceクラスタ・メンバーの開始と停止

- Oracle CoherenceアプリケーションのGrid ARchive (GAR)モジュールとしてのデプロイ

- Oracle Coherenceアプリケーションの起動と停止

- Oracle Coherenceリソースのセキュリティ保護

Oracle CoherenceをWebLogicサーバーと一緒に使用する方法の詳細は、「Oracle Coherenceの管理」を参照してください。

1.5 Oracle Enterprise ManagerによるOracle Coherenceの管理

Oracle Enterprise Manager Cloud Controlには、Oracle Coherenceクラスタの管理と監視に使用するOracle Coherence用のManagement Packがあります。管理者は、このManagement Packを使用してクラスタのパフォーマンスを積極的に監視することで、アプリケーション環境内のパフォーマンス問題を識別および診断するために要する時間を削減できます。主なメリットとして、次のようなことが可能になります。

- クラスタ全体を単一ターゲットとしてモデル化することによる複雑性の管理

- キャッシュとノードのリアルタイム・パフォーマンス監視および履歴パフォーマンス監視による診断時間と解決時間の短縮化の指定

- アプリケーション・コンテキストでのキャッシュの監視による依存性の分析

- しきい値とアラートを使用したプロアクティブな監視の指定

- 自動化されたプロビジョニングとライフサイクル管理を使用することによるリスクの軽減

- 迅速なランタイム構成変更によるキャッシュ・パフォーマンスのチューニング

Oracle Coherence用のManagement PackはOracle Enterprise Manager Cloud Controlに含まれており、Oracle Technology Network (OTN)からダウンロードできます。

http://www.oracle.com/technetwork/oem/grid-control/downloads/index.html?ssSourceSiteId=ocomen

Management Packの構成および使用に関する詳細な方法は、Oracle Enterprise Managerドキュメント・ライブラリのOracle Enterprise Manager Oracle Coherenceスタート・ガイドを参照してください。

2 JMXを使用したOracle Coherenceの管理

この章では、クラスタ・メンバーでJMX管理を有効にして構成する方法と、Java VisualVMやJConsoleなどのツールを使用してOracle Coherence MBeanにアクセスする方法について説明します。

この章には次の項が含まれます:

- JMX管理の構成

- Oracle Coherence MBeanへのアクセス

2.1 JMX管理の構成

JMX管理は、tangosol-coherence-override.xmlファイルの<management-config要素内で、または起動時に管理用のシステム・プロパティを設定することで構成します。<management-config要素の詳細は、『Oracle Coherenceでのアプリケーションの開発』を参照してください。

この項の内容は次のとおりです。

- クラスタ・メンバーでのリモートJMX管理の有効化

- クラスタ・メンバーでのローカルJMX管理の有効化

- 起動スクリプト使用時のJMX管理の有効化

- クラスタ・メンバーのリモート管理の停止

- JMX管理の無効化

- MBeanのフィルタ処理

- 管理情報のリフレッシュの構成

- 既存のMBeanサーバーの使用

2.1.1 クラスタ・メンバーでのリモートJMX管理の有効化

リモートJMX管理では、1つ以上のクラスタ・メンバーがそれぞれMBeanサーバーをホスティングできるようにします。このMBeanサーバーは、すべてのクラスタ・メンバーの管理対象オブジェクトの管理を担当しています。これらのクラスタ・メンバーのMBeanサーバーにアクセスすることで、すべてのクラスタ・メンバーの管理情報が表示されます。専用のJMXクラスタ・メンバーを使用するのは一般的な方法です。なぜなら、それによりJMXソフトウェアを1つずつクラスタ・メンバーにロードする必要もなくなり、しかも1つのJMXメンバーに問題が発生してもフォルト・トレランスは維持されるためです。

クラスタ・メンバーに対するリモートJMX管理を有効にするには、<managed-nodes>要素をallまたはremote-onlyに設定します。次に例を示します。

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-operational-config coherence-operational-config.xsd">
<management-config>
<managed-nodes system-property="tangosol.coherence.management">all
</managed-nodes>
</management-config>
</coherence>

remote-only設定では、リモートMBeanのみを管理するMBeanサーバーが起動されます。all設定では、リモートMBeanおよびローカル(同一JVM上の)MBeanを管理するMBeanサーバーが起動されます。

tangosol.coherence.managementシステム・プロパティによりリモートJMX管理を有効にすることもできます。次に例を示します。

-Dtangosol.coherence.management=all

2.1.2 クラスタ・メンバーでのローカルJMX管理の有効化

ローカルJMX管理では、MBeanサーバーの管理対象がクラスタ・メンバーのローカル(同一JVM上の)MBeanに制約されます。クラスタ・メンバーのMBeanサーバーにアクセスしても、ローカル管理情報しか表示されません。しかし、そのクラスタ・メンバーのMBeanは、リモートJMX管理が有効化されたクラスタ・メンバーによって引き続き管理できます。ローカルJMX管理は一般的に、拡張クライアントまたは一時的なクラスタ・クライアントで使用されます。

クラスタ・メンバーでのローカルJMX管理を有効化するには、<managed-nodes>要素をlocal-onlyに設定します。次に例を示します。

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-operational-config coherence-operational-config.xsd">
<management-config>
<managed-nodes system-property="tangosol.coherence.management">local-only
</managed-nodes>
</management-config>
</coherence>

tangosol.coherence.managementシステム・プロパティによりローカルJMX管理を有効にすることもできます。次に例を示します。

-Dtangosol.coherence.management=local-only

2.1.3 起動スクリプト使用時のJMX管理の有効化

便宜上の理由により、COHERENCE_HOME/bin/cache-serverおよびCOHERENCE_HOME/bin/coherenceの起動スクリプトには、クラスタ・メンバーでのJMX管理を有効にする-jmx引数が含まれます。次に例を示します。

cache-server -jmx

この引数は、スクリプト内で必要に応じて変更できる管理用のシステム・プロパティを自動的に設定します。デフォルトの設定は、次のようになります。

-Dtangosol.coherence.management=all
-Dtangosol.coherence.management.remote=true

2.1.4 クラスタ・メンバーのリモート管理の停止

デフォルトでは、すべてのクラスタ・メンバーのMBeanで、リモートMBeanサーバーによる管理が許可されています。メンバーのMBeanのリモート管理を制限するには、<allow-remote-management>要素をfalseに設定します。次に例を示します。

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-operational-config coherence-operational-config.xsd">
<management-config>
<allow-remote-management
system-property="tangosol.coherence.management.remote">false
</allow-remote-management>
</management-config>
</coherence>

tangosol.coherence.management.remoteシステム・プロパティによりリモート管理を無効にすることもできます。次に例を示します。

-Dtangosol.coherence.management.remote=false

2.1.5 JMX管理の無効化

クラスタ・メンバーでのJMX管理を無効化するには、<managed-nodes>要素をnoneに設定します。次に例を示します。

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-operational-config coherence-operational-config.xsd">
<management-config>
<managed-nodes system-property="tangosol.coherence.management">none
</managed-nodes>
</management-config>
</coherence>

メンバーのJMX管理を無効にしても、そのメンバーのリモート管理は停止されません。<allow-remote-management>もfalseに設定する必要があります。次の例では、JMX管理を無効化してメンバーのリモート管理を停止します。

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-operational-config coherence-operational-config.xsd">
<management-config>
<managed-nodes system-property="tangosol.coherence.management">none
</managed-nodes>
<allow-remote-management
system-property="tangosol.coherence.management.remote">false
</allow-remote-management>
</management-config>
</coherence>

2.1.6 MBeanのフィルタ処理

Oracle Coherence管理フレームワークでは、MBeanをMBeanサーバーに登録する前にそれらのMBeanをフィルタできます。すぐに使用できるMBeanフィルタが提供されており、カスタムのフィルタを必要に応じて作成することもできます。付属のMBeanフィルタ(com.tagosol.net.management.ObjectNameExcludeFilter)は、標準的な正規表現パターンを使用するJMXオブジェクト名に基づいて、MBeanを登録から除外します。すぐに使用できる構成では、このフィルタによっていくつかのプラットフォームMBeanが管理フレームワークに登録されないように除外されます。MBeanフィルタは、<mbean-filter>要素を使用して定義します。

次の例は、すぐに使用できる構成を示しています。

...
<mbean-filter>
<class-name>com.tangosol.net.management.ObjectNameExcludeFilter</class-name>
<init-params>
<init-param>
<param-type>string</param-type>
<param-value system-property="tangosol.coherence.management.exclude">
.*type=Service,name=Management,.*
.*type=Platform,Domain=java.lang,subType=ClassLoading,.*
.*type=Platform,Domain=java.lang,subType=Compilation,.*
.*type=Platform,Domain=java.lang,subType=MemoryManager,.*
.*type=Platform,Domain=java.lang,subType=Threading,.*
</param-value>
</init-param>
</init-params>
</mbean-filter>
...

管理サービスまたはプラットフォームMBeanを有効化するには、<param-value>要素の名前のリストから対応するオブジェクト名を削除します。特定のMBeanを登録されないように除外するには、そのMBeanオブジェクト名をリストに追加します。

tangosol.coherence.management.excludeシステム・プロパティによりMBeanをフィルタリングすることもできます。次に例を示します。

-Dtangosol.coherence.management.exclude=.*type=Service,name=Management,.*

2.1.7 管理情報のリフレッシュの構成

<refresh-expiry>、<refresh-policy>および<refresh-timeout>の各要素は、管理情報の待機時間を制御します。次の例では、これらの各設定を構成しています。詳細は、例の後に説明します。

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-operational-config coherence-operational-config.xsd">
<management-config>
<refresh-policy
system-property="tangosol.coherence.management.refresh.policy">
refresh-ahead</refresh-policy>
<refresh-expiry
system-property="tangosol.coherence.management.refresh.expiry">1s
</refresh-expiry>
<refresh-timeout
system-property="tangosol.coherence.management.refresh.timeout">300ms
</refresh-timeout>
</management-config>
</coherence>

2.1.7.1 管理情報のリフレッシュ失効の設定

<refresh-expiry>要素は、リモート・メンバーの管理情報をリモートで取得する最小間隔を指定します。この要素の値は、次の形式で指定する必要があります。

(\d)+((.)(\d)+)?[MS|ms|S|s|M|m|H|h|D|d]?

前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。

- MSまたはms(ミリ秒)

- Sまたはs(秒)

- Mまたはm(分)

- Hまたはh(時)

- Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は1sです。

tangosol.coherence.management.refresh.expiryシステム・プロパティにより失効を設定することもできます。次に例を示します。

-Dtangosol.coherence.management.refresh.expiry=2s

2.1.7.2 管理情報のリフレッシュ・ポリシーの設定

<refresh-policy>要素は、リモート管理情報のリフレッシュ方法を指定します。それぞれのポリシーでは、MBeanの使用パターンに基づいて待機時間を短縮する様々なリフレッシュ・アルゴリズムが使用されます。表2-1は、各ポリシーを説明しています。

表2-1 リフレッシュ・ポリシー

設定

説明

refresh-ahead(デフォルト)

失効遅延が経過した後、リクエストされる前に、MBeanを前の使用パターンに基づいてリフレッシュします。この設定は、ネットワーク消費量を多少増加させることで管理情報の待機時間を低減します。MBeanが繰返しまたはプログラム的にアクセスされる場合に最適です。

refresh-behind

データにアクセスした後、それぞれのMBeanをリフレッシュします。この方法では最適なレスポンス・タイムが確保されます。ただし返される情報は、最後のリフレッシュ時刻からのオフセットになります。

refresh-expired

MBeanがアクセスされ、最後のリフレッシュから失効遅延が経過すると、それぞれのMBeanをリモート・メンバーからリフレッシュします。この設定は、MBeanがランダムなパターンでアクセスされる場合に最適です。

tangosol.coherence.management.refresh.policyシステム・プロパティによりポリシーを設定することもできます。次に例を示します。

-Dtangosol.coherence.management.refresh.policy=refresh-expired

2.1.7.3 管理情報のリフレッシュ・タイムアウトの設定

<refresh-timeout>要素は、MBean情報のリフレッシュ時に管理メンバーがリモート・メンバーからのレスポンスを待つ期間を指定します。この値は<refresh-expiry>値より小さくする必要があります。この要素の値は、次の形式で指定する必要があります。

(\d)+((.)(\d)+)?[MS|ms|S|s|M|m|H|h|D|d]?

前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。

- MSまたはms(ミリ秒)

- Sまたはs(秒)

- Mまたはm(分)

- Hまたはh(時)

- Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は250msです。

tangosol.coherence.management.refresh.timeoutシステム・プロパティによりタイムアウトを設定することもできます。次に例を示します。

-Dtangosol.coherence.management.refresh.timeout=300ms

2.1.8 既存のMBeanサーバーの使用

Oracle Coherence管理フレームワークでは、既存のMBeanサーバーを使用してOracle Coherence MBeanを公開できます。MBeanサーバーは、クラスタ・メンバーと同一のJVMプロセス内にある必要があります。また、そのクラスタ・メンバーでは、JMX管理が有効化されている必要があります。

既存のMBeanサーバーを使用するには、<default-domain-name>要素を使用してMBeanサーバーのドメイン名を入力します。入力したドメイン名のMBeanサーバーが見つからないと、MBean登録に失敗します。次の例では、MyDomainNameドメイン名の既存のMBeanサーバーを指定します。

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-operational-config coherence-operational-config.xsd">
<management-config>
<managed-nodes system-property="tangosol.coherence.management">all
</managed-nodes>
<default-domain-name>MyDomainName</default-domain-name>
</management-config>
</coherence>

com.tangosol.net.management.MBeanServerFinderインタフェースを実装して、Oracle Coherence管理フレームワークによるMBeanサーバーの検出方法をカスタマイズします。<server-factory>要素内の<class-name>要素を使用して、実装クラスの完全修飾された名前を追加します。また、<init-params>要素を使用して、初期化パラメータを含めます。<default-domain-name>要素を使用して、クラスをインスタンス化する際に使用する既存のMBeanサーバー・ドメイン名を指定します。

次の例では、MyMBeanServerFinder実装クラスを指定して、その実装クラスにMyDomainNameドメイン名を渡します。

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-operational-config coherence-operational-config.xsd">
<management-config>
<managed-nodes system-property="tangosol.coherence.management">all
</managed-nodes>
<default-domain-name>MyDomainName</default-domain-name>
<server-factory>
<class-name
system-property="tangosol.coherence.management.serverfactory">
package.MyMBeanServerFinder</class-name>
<init-params>
<init-param>
<param-type>int</param-type>
<param-value>0</param-value>
</init-param>
</init-params>
</server-factory>
</management-config>
</coherence>

tangosol.coherence.management.serverfactoryシステム・プロパティにより実装クラスを指定することもできます。次に例を示します。

-Dtangosol.coherence.management.serverfactory=package.MyMBeanServerFinder

2.2 Oracle Coherence MBeanへのアクセス

Oracle Coherence MBeanにアクセスする前に、JMX管理をクラスタ・メンバーで有効にする必要があります。「JMX管理の構成」を参照してください。この項の例では、Oracle Coherence起動スクリプトの-jmx引数を使用してJMX管理を有効化します。

この項の内容は次のとおりです。

- Java VisualVMを使用したMBeanへのローカルでのアクセス

- JConsoleユーティリティを使用したMBeanへのローカルでのアクセス

- Oracle Coherence MBeanへのリモート・アクセスの許可

- HTMLアダプタ・アプリケーションを使用したMBeanへのアクセス

- Oracle Coherence MBeanコネクタの設定

2.2.1 Java VisualVMを使用したMBeanへのローカルでのアクセス

Java VisualVMは、JDK (JDK_HOME\bin\jvisualvm)に含まれる管理ユーティリティで、MBeanの表示およびMBeanとのやり取りの機能が提供されます。MBean機能がJava VisualVMに対するプラグインとして提供されています。このプラグインをJava VisualVM Plugins Centerからインストールする必要があります。ツールから、「Tools」 -> 「Plugins」オプションを使用してVisualVM-MBeansプラグインをインストールします。

Java VisualVMユーティリティを使用してMBeanにローカルでアクセスする手順は次のとおりです。

1. COHERENCE_HOME\bin\cache-serverスクリプトを使用してキャッシュ・サーバーを起動し、-jmx引数を指定してそのメンバーに対する管理を有効化します。次に例を示します。

COHERENCE_HOME\bin\cache-server -jmx

2. JDK_HOME\bin\jvisualvmを起動します。「Java VisualVM」ウィンドウが表示されます。

3. 「Applications」ツリーで、「Local」をクリックして展開し、クラスタ・メンバーのプロセスをダブルクリックします。プロセス情報は、このウィンドウの右側にあるプロセス・タブに表示されます。

4. 選択したプロセス・タブで「MBeans」タブをクリックし、Coherenceノードを展開してMBeanにアクセスします。

2.2.2 JConsoleユーティリティを使用したMBeanへのローカルでのアクセス

JConsoleは、JDK (JDK_HOME\bin\jconsole)に含まれる管理ユーティリティで、MBeanの表示およびMBeanとのやり取りの機能が提供されます。

JConsoleユーティリティを使用してMBeanにローカルでアクセスする手順は次のとおりです。

1. COHERENCE_HOME\bin\cache-serverスクリプトを使用してキャッシュ・サーバーを起動し、-jmx引数を指定してそのメンバーに対する管理を有効化します。次に例を示します。

COHERENCE_HOME\bin\cache-server -jmx

2. JDK_HOME\bin\jconsoleを起動します。Java Monitoring & Management Consoleウィンドウが表示され、「JConsole: 新規接続」ダイアログ・ボックスが表示されます。

3. 「JConsole: 新規接続」ダイアログ・ボックスで「ローカル・プロセス:」オプションを選択し、クラスタ・メンバーのプロセスを選択します。次に例を示します。

4. 「接続」をクリックします。

5. Java Monitoring & Management Consoleウィンドウで「MBeans」タブを選択し、Coherenceノードを展開してMBeanにアクセスします。

2.2.3 Oracle Coherence MBeanへのリモート・アクセスの許可

リモートJMX管理では、リモート・コンピュータ上のJMXクライアントでOracle Coherence MBeanにアクセスすることが可能です。システム・プロパティはリモート・アクセスを構成するためのもので、多くの場合、MBeanサーバーをホスティングするJVMを起動する際に設定されます。つまり、そのクラスタのMBeanサーバーをホスティングするクラスタ・メンバーを起動する際にシステム・プロパティは設定されます。次の記述では、最低限の構成要件のみが説明されています。JMX管理の構成方法の詳細は、JMXドキュメントを参照してください。

http://download.oracle.com/javase/7/docs/technotes/guides/management/agent.html

セキュリティ保護を有効化せずにOracle Coherence MBeanへのリモート・アクセスを許可するには、次のシステム・プロパティをクラスタ・メンバーの起動時に設定します。システム・プロパティを簡単に使用できるように、Oracle Coherence起動スクリプトのシステム・プロパティが-jmx引数の使用時に自動的に設定されるようにしておきます。

-Dcom.sun.management.jmxremote.port=port
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false

com.sun.management.jmxremote.port値を、クラスタ・メンバーの使用可能なポートのいずれかに設定します。JMXクライアント(例: JConsole)のホストとポートを、リモートMBeanサーバーへ接続するときに指定します。

場合によっては(仮想環境またはネットワーク・アドレス変換を使用する場合)、コンピュータのホスト名が誤って識別されたり、JMXクライアントに送信するRMIスタブでデフォルト値(127.0.0.1)が返されたりすることがあります。その結果、JMXクライアントによるMBeanサーバーへの接続が失敗します。RMIスタブに正しいIPアドレスを含めるには、java.rmi.server.hostnameシステム・プロパティを使用してホストのIPアドレスを明示的に設定します。次に例を示します。

-Djava.rmi.server.hostname=IP_Address

RMIプロパティの詳細は、次のRMIドキュメントを参照してください。

http://download.oracle.com/javase/7/docs/technotes/guides/rmi/javarmiproperties.html

2.2.4 HTMLアダプタ・アプリケーションを使用したMBeanへのアクセス

HTMLアダプタWebアプリケーションでは、キャッシュ・クライアントのOracle Coherence MBeanへのリモート・アクセスが可能で、JMXリファレンス実装の一部として同梱されているHTMLアダプタ(HtmlAdaptorServer)を使用します。このアダプタでは、jmxri.jarとjmxtools.jarライブラリを両方ともクラスパスに含める必要があります。JMXリファレンス実装は、次のサイトから入手できます。

http://www.oracle.com/technetwork/java/javase/tech/download-jsp-141676.html

HTMLアダプタを使用してMBeanにアクセスする手順は次のとおりです。

1. COHERENCE_HOME\bin\coherenceスクリプトを編集して、クラスパスにjmxri.jarとjmxtools.jarを含めます。たとえば、Windowsの場合は次のようにします。

-cp "jmxri-1.2.1.jar;jmxtools-1.2.1.jar;%coherence_home%\lib\coherence.jar"

2. スクリプトを使用してキャッシュ・ファクトリ・インスタンスを起動し、-jmx引数を指定してメンバー管理を有効化します。次に例を示します。

COHERENCE_HOME\bin\coherence -jmx

3. キャッシュ・ファクトリ・インスタンスが起動したら、コマンド・プロンプトでjmx 8082と入力します。これにより、クラスタ・メンバーのポート8082でHTTPアダプタが起動します。

4. Webブラウザで、アダプタにアクセスします。次の画面で示すように、ホスト名とポート8082からなるアドレスを使用します。

2.2.5 Oracle Coherence MBeanコネクタの設定

Oracle Coherenceには、クラスタ・メンバーを専用のMBeanサーバー・ホストとして起動するためのプログラムが用意されています。このプログラムでは、Oracle Coherence MBeanへのリモート・アクセスがJMXリモートAPIのRMI、またはJMXリファレンス実装で提供されるHTTPサーバーを使用して実現されます。必要に応じてRMIとHTTPのポート設定を構成して、ファイアウォールを介したアクセスを許可します。次のコマンドを使用して、サーバーを起動します。

java -Dtangosol.coherence.management=all
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
-cp coherence.jar;jmxri.jar;jmxtools.jar
com.tangosol.net.management.MBeanConnector [-http -rmi]

JMX RMIを使用したアクセスを許可するには、-rmi引数を含めます。HTTPおよびWebブラウザを使用したアクセスを許可するには、-http引数を含めます。これらの引数を両方とも含めることはできますが、メンバーを起動するには少なくと1つの引数を指定する必要があります。

表2-2は、JMX RMI構成のオプションのプロパティについて説明しています。

表2-2 JMX RMIの構成に使用できるオプションのプロパティ

プロパティ

説明

tangosol.coherence.management.remote.host

JMXサーバーがバインドされているホスト。デフォルト値はlocalhostです。Linuxでは、この値をホスト名またはIPアドレスに変更する必要がある場合があります。

tangosol.coherence.management.remote.registryport

JMX RMIのレジストリに使用するポート。デフォルト値は9000です。

tangosol.coherence.management.remote.connectionport

JMX RMI接続に使用するポート。デフォルト値は3000です。

表2-3は、HTTPの構成に使用できるオプションのプロパティについて説明しています。

表2-3 HTTPの構成に使用できるオプションのプロパティ

プロパティ

説明

tangosol.coherence.management.remote.httpport

HTTPの接続に使用するポート。デフォルト値は8888です。

JConsoleを使用してデフォルト設定でMBeanサーバーに接続するには、次のコマンドを使用します。

jconsole service:jmx:rmi://localhost:3000/jndi/rmi://localhost:9000/server

HTTPを使用してデフォルト設定でMBeanサーバーに接続するには、次のURLにアクセスします。

http://localhost:8888

注意:

認証およびSecure Socket Layer (SSL)を使用したセキュアなアクセスを設定するには、次のJMXエージェントのドキュメントを参照してください。

http://download.oracle.com/javase/7/docs/technotes/guides/management/agent.html

3 カスタムMBeanの登録

この章では、Oracle Coherence管理フレームワークにカスタムMBeanを登録し、カスタムMBeanとOracle Coherence MBeanの管理を統合する方法について説明します。

この章には次の項が含まれます:

- カスタムMBeanの登録の概要

- カスタムMBeanの宣言的な登録

- カスタムMBeanのプログラム的な登録

3.1 カスタムMBeanの登録の概要

Oracle Coherenceでは、管理フレームワーク内でカスタムMBeanを管理および監視できます。カスタムMBeanは、アプリケーション固有のMBeanです(JavaプラットフォームのMBeanを含む)。カスタムMBeanは、XMLファイルで宣言的にOracle Coherence MBeanサーバーに登録されるか、プログラム的にOracle Coherence MBeanサーバーに登録されます。

カスタムMBeanとOracle Coherence MBeanを統合することで、管理者は、クラスタ内に存在するすべてのメンバーのシステム情報とアプリケーション情報を1つの場所から更新および表示できます。

3.2 カスタムMBeanの宣言的な登録

カスタムMBeanは、custom-mbeans.xmlという名前のMBean構成オーバーライド・ファイル内で宣言的に登録されます。実行時には、クラスパスで見つかったcustom-mbeans.xmlの最初のインスタンスが使用されます。MBean構成に関する詳細は、『Oracle Coherenceでのアプリケーションの開発』を参照してください。MBeanを登録するには、MBeanのクラス名、MBeanファクトリを使用するか、問合せを実行して対象のMBeanを見つけてください。

注意:

カスタムMBeanは、実行時に必ず検出される必要があります。MBean(または、MBeanを含むライブラリ)は、クラスタ・メンバー(JMX管理が有効化されているメンバーを含む)のクラスパスに配置してください。

この項の内容は次のとおりです。

- MBean構成ファイルの作成

- クラス名を使用したMBeanの登録

- MBeanファクトリからのMBeanの登録

- 問合せを使用したMBeanの登録

- 別のMBean構成オーバーライド・ファイルの指定

- MBeanのローカルMBeanサーバーへの制限

3.2.1 MBean構成ファイルの作成

custom-mbeans.xmlファイルは、オペレーション・デプロイメント・ディスクリプタの<mbeans要素をオーバーライドします。そのため、ルート要素は<mbeans要素である必要があります。<mbeans要素の完全なリファレンスについては、『Oracle Coherenceでのアプリケーションの開発』を参照してください。

MBean構成オーバーライド・ファイルを作成する手順は次のとおりです。

1. テキスト・ファイルを作成してcustom-mbeans.xmlとして保存します。

2. 次のようにファイルを編集して空の<mbeans>ノードを作成します。

<mbeans>
</mbeans>

3. ファイルを保存して閉じます。

4. カスタムMBean構成オーバーライド・ファイルが実行時のクラスパスで、coherence.jarライブラリより前にあることを確認してください。
次の例では、COHERENCE_HOMEにあるcustom-mbeans.xmlファイルを使用するキャッシュ・サーバーを起動します。

java -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer

3.2.2 クラス名を使用したMBeanの登録

<mbean-class>要素は、MBeanの完全修飾されたクラス名を使用してMBeanを登録およびインスタンス化します。次の例では、com.MyMBeanという名前のMBeanを登録して、そのMBeanにtype=applicationというオブジェクト名を付けます。

<mbeans>
<mbean id="100">
<mbean-class>com.MyMBean</mbean-class>
<mbean-name>type=application</mbean-name>
<enabled>true</enabled>
</mbean>
</mbeans>

前述の構成では、MBeanを登録してリモート管理を許可します。つまり、MBeanの名前を指定すると、そのオブジェクト名の一部としてクラスタ・メンバーのノードIDやドメイン・ネームスペースも自動的に含められることになります。次に例を示します。

Coherence:type=application,nodeId=<nodeId>

デフォルトの登録動作を変更する方法は、「カスタムMBeanのプログラム的な登録」を参照してください。

3.2.3 MBeanファクトリからのMBeanの登録

<mbean-factory>および<mbean-accessor>要素は、ファクトリ・クラスからMBeanを登録およびインスタンス化します。次の例では、java.lang.management.ManagementFactoryクラスのgetMemoryMXBeanアクセッサ・メソッドを使用してJavaプラットフォームのMemoryMXBean MBeanを登録し、そのMBeanにtype=java,SubSystem=Memoryというオブジェクト名を付けます。

<mbeans>
<mbean id="2">
<mbean-factory>java.lang.management.ManagementFactory</mbean-factory>
<mbean-accessor>getMemoryMXBean</mbean-accessor>
<mbean-name>type=java,SubSystem=Memory</mbean-name>
<enabled>true</enabled>
</mbean>
</mbeans>

前述の構成では、MBeanを登録してリモート管理を許可します。つまり、MBeanの名前を指定すると、そのオブジェクト名の一部としてクラスタ・メンバーのノードIDやドメイン・ネームスペースも自動的に含められることになります。次に例を示します。

Coherence:type=java,SubSystem=Memory,nodeId=<nodeId>

デフォルトの登録動作を変更する方法は、「カスタムMBeanのプログラム的な登録」を参照してください。

3.2.4 問合せを使用したMBeanの登録

MBeanを登録およびインスタンス化する際には、<mbean-query>要素でMBeanサーバーを問い合せます。デフォルトでは、メンバーのデフォルトのMBeanサーバーが問い合せられますが、別のMBeanサーバーを指定することもできます。次の例では、メンバーのデフォルトのMBeanサーバーに対してjava.lang:*問合せを実行して、登録するMBeanを見つけます。

<mbeans>
<mbean id="3">
<mbean-query>java.lang:*</mbean-query>
<mbean-name>type=Platform</mbean-name>
<enabled>true</enabled>
</mbean>
<mbeans>

メンバーのデフォルトのMBeanサーバー以外のMBeanサーバーを指定するには、<mbean-server-domain>要素を使用してMBeanサーバーのドメイン名を入力します。次に例を示します。

<mbeans>
<mbean id="3">
<mbean-query>java.lang:*</mbean-query>
<mbean-server-domain>MyDomain</mbean-server-domain>
<mbean-name>type=Platform</mbean-name>
<enabled>true</enabled>
</mbean>
</mbeans>

3.2.5 別のMBean構成オーバーライド・ファイルの指定

tangosol.coherence.mbeansシステム・プロパティでは、デフォルトのオーバーライド・ファイルcustom-mbeans.xmlのかわりにMBean構成オーバーライド・ファイルを指定します。次に例を示します。

-Dtangosol.coherence.mbeans=my-mbeans.xml

クラスパスにファイルの場所が含まれていることを確認し、含まれていない場合は、ファイル名とそのフルパス(または相対パス)を入力します。このシステム・プロパティでMBean構成オーバーライド・ファイルの場所を指定するときには、URLを使用することもできます。

3.2.6 MBeanのローカルMBeanサーバーへの制限

カスタムMBeanは、JMX管理が有効なすべてのクラスタ・メンバーから監視できます。MBeanをローカルMBeanサーバーにのみ登録し、そのMBeanをリモート・クラスタ・メンバーから監視できないように制限するには、<local-only>要素をtrueに設定します。次に例を示します。

<mbeans>
<mbean id="100">
<mbean-class>com.MyMBean</mbean-class>
<mbean-name>type=application</mbean-name>
<local-only>true</local-only>
<enabled>true</enabled>
</mbean>
</mbeans>

3.3 カスタムMBeanのプログラム的な登録

com.tangosol.net.management.Registryインタフェースでは、カスタムMBeanがプログラム的に登録されます。次の例では、registerメソッドを使用して標準的なMBeanを登録します。Registryインタフェースの詳細は、Oracle Coherence Java APIリファレンスを参照してください。

Registry    registry = CacheFactory.ensureCluster().getManagement();
Custom      bean     = new Custom();
String      sName    = registry.ensureGlobalName("type=Custom");

registry.register(sName, bean);

前述の構成では、MBeanを登録してリモート管理を許可します。つまり、MBeanの名前を指定すると、そのオブジェクト名の一部としてクラスタ・メンバーのノードIDやドメイン・ネームスペースも自動的に含められることになります。次に例を示します。

Coherence:type=custom,nodeId=<nodeId>

カスタム・ドメイン・ネームスペースの使用方法

デフォルトのネームスペースの動作を設定することで、同一JVM内で複数のクラスタが実行されていても、集中管理するMBeanサーバーがオブジェクトを一意の名前で認識するようになります。つまり、MBeanがクラスタ間で同じオブジェクト名を使用しないように、別のドメイン・ネームスペースが自動的に割り当てられる(Coherence@1:など)ことになります。カスタム・ドメイン・ネームスペースを使用する際には、一意のオブジェクト名を付ける必要があります。

カスタム・ドメイン・ネームスペースを使用するには、その定義にネームスペースを明示的に追加します。次に例を示します。

Registry    registry = CacheFactory.ensureCluster().getManagement();
Custom      bean     = new Custom();
String      sName    = registry.ensureGlobalName("Monitor:type=Custom");

registry.register(sName, bean);

カスタムMBeanに対してJMX操作を実行するには、Registry.ensureGlobalName() APIで返されるオブジェクト名を使用します。

静的MBean名の使用方法

ensureGlobalNameメソッドは、MBeanのObjectNameの終わりに,nodeId=...部分を追加することで、集中管理するMBeanサーバーがオブジェクトを一意の名前で認識できるようにします。アプリケーションに静的MBean名が必要な場合は、MBean問合せを使用して、ローカルのMBeanサーバーから管理フレームワークにMBeanを追加します。たとえば、管理対象メンバーに静的な名前を持つMBeanが作成されて、,nodeId=...部分がそのMBeanの名前に、管理メンバーでのMBean集約時に追加されます。

静的MBean名を使用する手順は次のとおりです。

1. クラスタに参加する前に、registerMBeanまたはcreateMBeanメソッドを使用して、管理対象メンバーのローカルMBeanサーバーにMBeanを登録します。これらのメソッドの使用方法については、MBeanServerのインタフェース・リファレンスを参照してください。
http://docs.oracle.com/javase/7/docs/api/javax/management/MBeanServer.html

2. MBeanHelper.findMBeanServer()メソッドを使用して、Oracle Coherenceが使用しているものと同じMBeanサーバーを取得します。

3. MBeanサーバーでMBeanを問い合せるようcustom-mbeans.xmlファイルを構成します。「問合せを使用したMBeanの登録」を参照してください。

注意:

ローカルMBeanサーバーにアクセスできるように環境が適切に設定されていることを確認するには、次のOracleのドキュメントを参照してください。

http://download.oracle.com/javase/7/docs/technotes/guides/management/agent.html

4 Oracle Coherenceのレポート機能の使用

この章では、Oracle Coherenceのレポート機能の概要と、クラスタ内でレポート機能を有効にして構成する方法について説明します。

この章には次の項が含まれます:

- Oracle Coherenceのレポート機能の概要

- クラスタ・メンバーでのOracle Coherenceのレポート機能の有効化

- デフォルトのレポート・グループ構成ファイルの切替え

- レポート・グループ出力ディレクトリのオーバーライド

- レポートのタイムスタンプ・フォーマットの変更

- Reporter MBeanを使用したOracle Coherenceのレポート機能の管理

- 分散構成でのOracle Coherenceのレポート機能の実行

4.1 Oracle Coherenceのレポート機能の概要

Oracle Coherenceレポートは、重要な管理情報を時系列で示します。このレポートでは、多くの場合、トラブルシューティングおよび計画に役立つ傾向が特定されます。レポート機能はデフォルトでは無効になっているため、オペレーション・オーバーライド・ファイルで、またはシステム・プロパティを使用して、明示的に有効にする必要があります。

レポートの表示

デフォルトのレポート動作では、1時間おきに10種類のレポートが作成されます。これらのレポートは毎分リフレッシュされます。レポートは、クラスタ・メンバーを起動するディレクトリに保存されます。各ファイルには、YYYYMMDDHH形式のレポート・タイムスタンプを持つプレフィックスが含まれます。この形式により、不要な情報の特定やパージが容易になります。表4-1に、レポートを要約します。レポートの詳細は、第6章「レポート内容の分析」を参照してください。

表4-1 デフォルトのOracle Coherenceレポート

ファイル名

説明

YYYYMMDDHH-cache-usage.txt

各キャッシュの使用(put、getなど)の統計が含まれます。キャッシュのレポートは、クラスタにキャッシュが存在する場合にのみ作成されます。

YYYYMMDDHH-Management.txt

Oracle Coherence管理フレームワークに関する情報が含まれます

YYYYMMDDHH-memory-status.txt

各メンバーに関するメモリーおよびガベージ・コレクションの情報が含まれます

YYYYMMDDHH-network-health-detail.txt

各メンバーにおけるパブリッシャの成功率および受信側の成功率が含まれます

YYYYMMDDHH-network-health.txt

クラスタ全体におけるパブリッシャの成功率および受信側の成功率が含まれます

YYYYMMDDHH-nodes.txt

クラスタのメンバーのリストが含まれます

YYYYMMDDHH-report-proxy.txt

クラスタ内の各プロキシ・サーバーに関する使用状況が含まれます

YYYYMMDDHH-service.txt

各サービスのリクエストおよびタスク情報が含まれます

YYYYMMDDHH-flashjournal.txt

フラッシュベース記憶域の使用およびパフォーマンスに関する情報が含まれます

YYYYMMDDHH-ramjournal.txt

RAMベース記憶域の使用に関する情報が含まれます

レポート機能の構成の理解

レポート構成ファイルは、単一レポートを定義します。たとえば、report-node.xml構成ファイルは、YYYYMMDDHH-nodes.txtレポートを作成します。レポート構成ファイルは、Oracle Coherence MBeanを使用してこのレポートで使用されているデータを収集します。coherence.jar/reportsディレクトリには、事前定義されたレポート構成ファイルが含まれます。レポート・ファイル構成要素の詳細は、付録B「レポート・ファイル構成要素」を参照してください。

レポート・グループ構成ファイルは、生成するレポート、レポートのリフレッシュ頻度、レポートの保存先ディレクトリおよびレポートの各パラメータを決定します。coherence.jar/reportsディレクトリには、3つの事前定義済レポート・グループ構成ファイル(report-group.xml、report-web.xml、およびreport-all.xml)が含まれます。レポート・グループ構成要素の詳細は、付録C「レポート・グループ構成要素」を参照してください。

レポートのカスタマイズ

レポート構成ファイルをカスタマイズしたり、必要に応じて新しい構成ファイルを作成してください。レポートには、すべてのMBean(カスタムMBeanを含む)からの情報を含められます。詳細は、第5章「カスタム・レポートの作成」を参照してください。

4.2 クラスタ・メンバーでのOracle Coherenceのレポート機能の有効化

レポート機能はデフォルトでは無効になっているため、明示的に有効にする必要があります。レポート機能を有効化する前に、クラスタ・メンバーでのJMX管理が有効化されていることを確認してください。クラスタ・メンバーでJMX管理を有効化する方法の詳細は、「JMX管理の構成」を参照してください。デフォルトのレポート機能の構成では、1時間ごとにレポートのセットが作成され、1分ごとにレポートがリフレッシュされます。レポートは、クラスタ・メンバーを起動するディレクトリに保存されます。

注意:

レポート機能を有効化する前に、レポートをアーカイブする計画を決定します。

レポート機能を有効化するには、オペレーション・オーバーライド・ファイルを編集し、<reporter>要素内に、trueに設定した<autostart>要素を追加します。次に例を示します。

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-operational-config coherence-operational-config.xsd">
<management-config>
<reporter>
<autostart
system-property="tangosol.coherence.management.report.autostart">true
</autostart>
</reporter>
</management-config>
</coherence>

tangosol.coherence.management.report.autostartシステム・プロパティによりレポート機能を有効にすることもできます。次に例を示します。

-Dtangosol.coherence.management.report.autostart=true

4.3 デフォルトのレポート・グループ構成ファイルの切替え

レポート・グループ構成ファイルは、どのレポートが生成されるかを定義します。次の3つの事前定義済レポート・グループ構成ファイルがcoherence.jar/reportsディレクトリに含まれます。

- report-group.xml: 生成する一連のコア・レポートを構成します。これは、デフォルトの構成におけるレポート・グループ構成ファイルです。

- report-web.xml: 一連のOracle Coherence*Webレポートを構成します。Oracle Coherence*Web固有のレポートについては、『Oracle Coherence*WebでのHTTPセッション・マネージメントの管理』を参照してください。

- report-all.xml: 生成するすべての事前定義済レポートを構成します。

レポート・グループ構成ファイルを変更するには、オペレーション・オーバーライド・ファイルを編集し、<reporter>要素内に、レポート・グループ構成ファイルに設定した<configuration>要素を追加します。次に例を示します。

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-operational-config coherence-operational-config.xsd">
<management-config>
<reporter>
<configuration
system-property="tangosol.coherence.management.report.configuration">
reports/report-all.xml</configuration>
</reporter>
</management-config>
</coherence>

tangosol.coherence.management.report.configurationシステム・プロパティによりデフォルトのレポート・グループ構成ファイルを切り替えることもできます。次に例を示します。

-Dtangosol.coherence.management.report.configuration=reports/report-all.xml

4.4 レポート・グループ出力ディレクトリのオーバーライド

事前定義されたレポート・グループは、クラスタ・メンバーの起動場所であるディレクトリにレポートを保存するようデフォルトで構成されています。出力ディレクトリは、tangosol.coherence.reporter.output.directoryシステム・プロパティを使用してオーバーライドできます。次に例を示します。

-Dtangosol.coherence.reporter.output.directory=/mydirectory

パスは、絶対パスまたはクラスタ・メンバーが起動されるディレクトリに対する相対パス(./)として指定できます。メンバーが実行しているユーザー名には、このパスに対する読取り/書込みアクセスが必要です。

4.5 レポートのタイムスタンプ・フォーマットの変更

レポート・タイムスタンプは、ローカルのタイムゾーンのデフォルトの日時形式(EEE MMM dd HH:mm:ss zzz yyyy)で表示されます。このタイムゾーンと日時形式は必要に応じて変更してください。タイムゾーンは、ゾーンID(例: US/東部時間)またはカスタムID(例: GMT-05:00)を使用して入力します。日時形式は、java.text.SimpleDateFormatクラスで定義したパターンに従います。

レポート・タイムスタンプ・フォーマットを変更するには、オペレーション・オーバーライド・ファイルを編集し、<reporter>要素内に<timezone>および<timeformat>要素を、それぞれ該当するタイムゾーンと日時形式に設定して追加します。次に例を示します。

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-operational-config coherence-operational-config.xsd">
<management-config>
<reporter>
<timezone
system-property="tangosol.coherence.management.report.timezone">
US/Eastern
</timezone>
<timeformat
system-property="tangosol.coherence.management.report.timeformat">
MMM dd, yyyy  hh:mm:ss a
</timeformat>
</reporter>
</management-config>
</coherence>

tangosol.coherence.management.report.timezoneおよびtangosol.coherence.management.report.timeformatシステム・プロパティでレポート・タイムスタンプ・フォーマットを変更することもできます。次に例を示します。

-Dtangosol.coherence.management.report.timezone=US/Eastern
-Dtangosol.coherence.management.report.timeformat=MMM dd, yyyy hh:mm:ss a

4.6 Reporter MBeanを使用したOracle Coherenceのレポート機能の管理

ReporterMBean MBeanは、Oracle Coherenceのレポート機能を管理します。このMBeanには、JMX統計を表示して、レポートをリアルタイムで管理するための属性および操作が含まれます。Oracle Coherence MBeanにアクセスする方法については、「Oracle Coherence MBeanへのアクセス」を参照してください。

注意:

ReporterMBean MBeanで行った変更は永続的ではありません。クラスタ・メンバーが再起動すると、設定は元の値に戻ります。

図4-1は、JConsole内のReporterMBean MBeanの属性と操作を示しています。

図4-1 JConsole内のReporterMBean MBean

ReporterMBean MBeanは次のタスクを実行します。ReporterMBean MBeanの属性と操作の完全なリファレンスについては、「ReporterMBean」を参照してください。

- レポート作成の開始: 現在停止している場合は、start操作を使用してレポート作成を開始します。

- レポート作成の停止: stop操作を使用してレポート作成を停止します。クラスタ・メンバーがレポート作成を自動的に開始するように構成されている場合、クラスタ・メンバーの再起動時にレポート作成が再開します。

- オンデマンド・レポートの実行: runReport操作を使用して、1つのレポートまたはレポート・グループの作成を一度に実行できます。レポート構成ファイルまたはレポート・グループ構成ファイルを指定します。また、レポート作成を実行する前に、レポート機能が有効化されていることを確認してください。

- 出力パスの変更: OutputPath属性を使用して、レポートの保存先を変更します。

- リフレッシュ間隔の変更: IntervalSeconds属性を使用して、レポート・データのリフレッシュ頻度を変更します。

- レポート構成ファイルの変更: ConfigFile属性を使用して、使用するレポート・グループ構成ファイルを変更します。

- バッチ番号の変更: CurrentBatch属性を使用して、現在のバッチ番号を変更します。レポートの次回のリフレッシュでは、新しいバッチ番号から増分します。

4.7 分散構成でのOracle Coherenceのレポート機能の実行

分散構成では、クラスタの安定性が重要になります。この構成では、分散されたレポータが個別に実行されるため、実行時刻が揃いません。そのため、クラスタ・レベルの分析は非常に困難になりますが、メンバーがクラスタに参加または離脱している間のメンバー・レベルの分析は可能です。

レポート機能を分散モードで実行しているときは、レポータを一元管理しながら各メンバーでローカルのJMXの統計を記録できます。分散構成を有効化する手順は次のとおりです。

次のシステム・プロパティを使用して、管理メンバーを起動します。

-Dtangosol.coherence.management.report.autostart=false
-Dtangosol.coherence.management.report.distributed=true
-Dtangosol.coherence.management=all

次のシステム・プロパティを使用して、管理対象クラスタ・メンバーを起動します。

-Dtangosol.coherence.management.report.autostart=true
-Dtangosol.coherence.management.report.distributed=true
-Dtangosol.coherence.management=local-only
-Dtangosol.coherence.management.remote=true

5 カスタム・レポートの作成

この章では、カスタム・レポート定義ファイルとカスタム・レポート・グループ構成ファイルを作成する方法について説明します。

この章には次の項が含まれます:

- カスタム・レポート作成の概要

- レポート構成ファイルの作成

- カスタム・レポート・グループ構成ファイルの作成

- 生成するカスタム・レポートの構成

5.1 カスタム・レポート作成の概要

カスタム・レポートでは、Oracle Coherence MBeanサーバー・ドメイン(カスタムMBeanを含む)に登録されているすべてのMBeanを使用できます。各種のMBeanを使用すると、あらゆる管理データをクラスタ実装に適した意味のある仕方で組み合せることができます。カスタム・レポートをテスト中に作成してデータを関連付け、本番運用前のトラブルシューティングと計画でその傾向を監視してください。

カスタム・レポートを作成する前に、coherence.jar/reportsディレクトリから事前定義されたレポート構成ファイルを抽出します。このファイルを、カスタム・レポートを作成するときの開始点として使用します。

レポート構成ファイル

Oracle Coherenceのレポート機能は、レポート構成ファイルおよびレポート・グループ構成ファイルという、2種類の構成ファイルを利用します。

- レポート構成ファイル: レポート構成ファイルは実行時にレポートを作成します。このファイルには、レポートの名前、抽出するMBeanデータおよびそのデータの組成方法に関する情報が含まれています。各レポートには、対応するレポート構成ファイルが存在します。レポート構成ファイルは、coherence.jarライブラリのルート・ディレクトリにパッケージ化されている、coherence-report-config.xsdスキーマ・ファイルで定義されるXMLドキュメントです。

- レポート・グループ構成ファイル: レポート・グループ構成ファイルは、実行時にどのレポートが生成されるかを構成します。このファイルには、各レポート構成ファイルの名前と場所、レポートを保存する出力ディレクトリ、およびレポートのリフレッシュ頻度に関する情報が含まれています。レポート・グループ構成ファイルは、coherence.jarライブラリのルート・ディレクトリにパッケージ化されている、coherence-report-group-config.xsdスキーマ・ファイルで定義されているXMLドキュメントです。

5.2 レポート構成ファイルの作成

この項の各トピックでは、coherence-report-config.xsdファイルに基づいてレポート構成ファイルを作成する方法について説明します。レポート・ファイル構成要素の詳細は、付録B「レポート・ファイル構成要素」を参照してください。

この項の内容は次のとおりです。

- レポートの一般的な特性の指定

- レポート内のMBeanの問合せ

- データ列の指定

- レポートでのフィルタの使用

- レポートでの関数の使用

- レポートでの集計機能の使用

- デルタ関数の作成

5.2.1 レポートの一般的な特性の指定

表5-1は、レポートの一般的な特性を構成する要素を説明しています。

表5-1 一般的なレポート要素

要素

オプション/
必須

説明

<file-name>

必須

レポート保存時に作成または更新するファイル名

<delim>

オプション

レポートの列デリミタ。有効な値は、{tab}、{space}または印刷可能な文字です。デフォルト値は{tab}です。値が複数文字の文字列の場合、その文字列の最初の文字のみが使用されます。

<hide-headers>

オプション

ヘッダーをレポートで非表示にするかどうかを決定するブール要素。trueを指定すると、列ヘッダーとレポートの説明は表示されません。デフォルト値はfalseです。

5.2.1.1 file-nameマクロ

表5-2は、file-name要素で使用するために事前定義されたマクロを示しています。これらのマクロは、ファイル名に、メンバー名、バッチ番号または日付を追加します。

表5-2 file-name要素のマクロ

マクロ

説明

batch

レポートのファイル名に順序番号を追加します

date

レポートのファイル名に日付(YYYYMMDDHH形式)を追加します。レポートが短期間保持された後で廃棄される場合に使用します。

node

ファイル名にメンバーIDを追加します。このノード設定は、多くのノードで同じレポートを実行し、その出力ファイルを分析用に統合する場合に便利です。

5.2.1.2 file-nameマクロの例

次の例では、2009年1月1日の12時に、ファイル200901012_network_status.txtを作成します。ファイル名はレポートを実行するメンバーのシステム時間によって異なります。

<file-name>{date}_network_status.txt</file-name>

次の例では、メンバー12でレポートを実行すると、ファイル00012_network_status.txtを作成します。ノードIDは不安定なため、このマクロは短期的な分析にのみ使用してください。

<file-name>{node}_network_status.txt</file-name>

次の例では、レポートの21回目の実行で、ファイル0000000021_network_status.txtを作成します。バッチは不安定なため、このマクロは短期的な分析にのみ使用してください。

<file-name>{batch}_network_status.txt</file-name>

5.2.2 レポート内のMBeanの問合せ

問合せは、レポート情報の基礎になるものです。問合せパターンは、JMX ObjectName問合せ文字列です。この文字列は、レポートのデータを作成するために使用される1つ以上のMBeanを返すことができます。問合せをレポート全体に対して、あるいはレポートの特定の列内で定義できます。ワイルドカード(*)は、複数のMBeanと一致させるために使用します。例5-1では、登録されたすべてのService MBeanを返します。<query>要素の詳細は、「query」を参照してください。

例5-1 単純なMBean問合せ文字列

<query>
<pattern>Coherence:type=Service,*</pattern>
</query>

問合せではフィルタ定義を使用できますが、列およびフィルタ参照を使用することもできます。フィルタの使用方法の詳細は、「レポートでのフィルタの使用」を参照してください。例5-2では、問合せの中のフィルタを参照する方法を示しており、RoleNameがCoherenceServerと等しいクラスタ内のすべてのノードIDおよびロール名をリストする方法を説明しています。

例5-2 クラスタのノードIDとロール名のリストのレポートへの組込み

<filters>
<filter id="equalsRef">
<type>equals</type>
<params>
<column-ref>RoleRef</column-ref>
<column-ref>StringRef</column-ref>
</params>
</filter>
</filters>

<query>
<pattern>Coherence:type=Node,*</pattern>
<filter-ref>equalsRef</filter-ref>
</query>

<row>
<column id ="NodeRef">
<type>key</type>
<name>nodeId</name>
<header>Node Id</header>
</column>

<column id ="RoleRef">
<name>RoleName</name>
<header>Role</header>
</column>

<column id = "StringRef">
<type>constant</type>
<name>ConstString</name>
<hidden>true</hidden>
<data-type>string</data-type>
<value>CoherenceServer</value>
</column>
</row>

5.2.3 データ列の指定

データ列には、JMX属性、ObjectNameのキー部分、JMX複合属性、JMX結合属性、レポート・マクロ、およびレポート定数を使用できます。

5.2.3.1 属性の組込み方法

問合せパターンから返されるデータを組み込むには、レポートに属性ソースを含む列を設定する必要があります。これは、レポートにデータを組み込む最も一般的な方法です。

例5-3は、問合せパターンCoherence:type=Node,*で取得されたRoleName属性を組み込む方法を示しています。

例5-3 問合せパターンで取得された属性の組込み

<column id = "RoleName">
<type>attribute</type>
<name>RoleName</name>
<header>Role Name</header>
</column>

5.2.3.2 キー部分の組込み方法

ObjectNameのキーの値は、問合せパターンで返されたObjectNameから取得できます。その後、この値をレポートに組み込むことができます。

例5-4は、問合せパターンCoherence:type=Node,*で取得されたnodeIdキー部分を組み込む方法を示しています。

例5-4 ObjectNameのキー部分のレポートへの組込み

<column id ="NodeId">
<type>key</type>
<name>nodeId</name>
<header>Node Id</header>
</column>

5.2.3.3 複合属性情報の組込み方法

JMXの複合値を使用して、複合データ属性の一部(Map属性など)をレポートに組み込みます。

例5-5は、GarbageCollector MBeanで取得されたLastGCInfo属性のstartTimeを組み込む方法を示しています。

例5-5 複合属性情報のレポートへの組込み

<query>
<pattern>Coherence:type=Platform,Domain=java.lang,subType=GarbageCollector,
name=ParNew,*</pattern>
</query>

<column id="LastGCStart">
<type>attribute</type>
<name>LastGcInfo/startTime</name>
<header>Last GC Start Time</header>
</column>

5.2.3.4 複数のMBean情報の組込み

JMX結合属性は、レポートで複数のMBean情報が要求される場合に使用します。結合の作成時に考慮が必要な重要な点は、主問合せ、結合問合せ、および外部キーを決定することです。主問合せは、レポートの適切な行数を返す問合せです。結合問合せパターンでは、単一のMBeanを参照する必要があります。これにワイルド・カード(*)を含めることはできません。外部キーは、結合問合せ文字列の作成に必要な主問合せの属性によって決定されます。

MBean間の結合を可能にするレポータの機能が列置換マクロです。列置換により、列の結果の値を文字列の一部として組み込むことができます。列置換マクロは、中カッコ({})で囲まれた列ID属性です。レポータでは循環参照をチェックしないため、循環が構成されていると実行時に失敗します。

5.2.3.5 複数のMBean情報を組み込む例

レポートでは、複数のMBeanからの情報を使用できます。これには、MBean間にjoinが必要です。

注意:

join属性の主な制限は、結合の結果は1つの値のみを持つ必要があるということです。

たとえば、レポートでCache MBean (Coherence:type=cache,*)のTotalGetsおよびNode MBean (Coherence:type=Node,*)のRoleNameが要求される場合は、join属性を使用します。

Cache MBeanからは他のMBeanからよりも多くのMBeanが取得されるため、Coherence:type=Cache,*が主問合せとなり、RoleNameがjoin属性となります。この結合の外部キーは、Cache MBeanのnodeIdキー部分であり、これをレポートに含める必要があります。例5-6は、このシナリオの構成を示しています。

例5-6 複数のMBean情報のレポートへの組込み

<column id="RoleName">
<type>attribute</type>
<name>RoleName</name>
<header>Role Name</header>
<query>
<pattern>Coherence:type=Node,nodeId={NodeFK}</pattern>
</query>
</column>

<column id ="NodeFK">
<type>key</type>
<name>nodeId</name>
<header>Node Id</header>
</column>

5.2.3.6 レポート・マクロの使用方法

レポートには、次の3つのレポート・マクロが含まれます。

- レポート時間(report-time): レポートの日付と時間。この情報は時系列分析に有用です。

- レポート・バッチ/カウント(report-count): 同時実行された様々なレポートの情報を相互に関連付ける場合に使用される、long型の識別子です。

- レポート・メンバー(report-node): 異なるメンバーで実行された同じレポートの情報を統合する場合、またはレポートから実行メンバー情報を排除する場合に使用されるメンバー識別子です。

例5-7は、レポートに実行時刻を組み込む方法を示しています。

例5-7 実行時刻のレポートへの組込み

<column id ="ReportTime">
<type>global</type>
<name>{report-time}</name>
<header>Report Time</header>
</column>

例5-8は、レポート・バッチ/カウントを組み込む方法を示しています。

例5-8 レポート・バッチ/カウントのレポートへの組込み

<column id="ReportBatch">
<type>global</type>
<name>{report-count}</name>
<header>batch</header>
</column>

例5-9は、実行メンバーを組み込む方法を示しています。

例5-9 実行メンバーの組込み

<column id="ReportNode">
<type>global</type>
<name>{report-node}</name>
<header>ExecNode</header>
<hidden>false</hidden>
</column>

5.2.3.7 定数値の組込み方法

静的値またはレポート・パラメータでは、レポート定数を使用できます。これらの定数は、double型またはstring型の値です。定数値は多くの場合、結果を特定のデータ・セットに制限するフィルタや計算で使用されます。

例5-10は、レポートにdouble型の定数1.0を含める方法を示しています。

例5-10 数値定数のレポートへの組込み

<column id ="One">
<type>constant</type>
<header>Constant1</header>
<hidden>false</hidden>
<data-type>double</data-type>
<value>1.0</value>
</column>

例5-11は、レポートにstring型の定数dist-Employeeを含める方法を示しています。

例5-11 文字列定数のレポートへの組込み

<column id ="EmployeeCacheName">
<type>constant</type>
<header>Employee Cache Name</header>
<hidden>false</hidden>
<data-type>string</data-type>
<value>dist-Employee</value>
</column>

5.2.4 レポートでのフィルタの使用

フィルタは、レポート内のデータを制限します。フィルタには、比較フィルタと複合フィルタがあります。比較フィルタは、2つの列の結果を評価します。比較フィルタには、equals、greaterおよびlessがあります。

複合フィルタは、1つまたは2つのフィルタにより得られるブール結果を評価します。複合フィルタのタイプには、and、orおよびnotがあります。各複合フィルタは、フィルタ・パラメータを最初から最後まで評価してから、標準的なブール論理を適用します。複合フィルタの評価では、標準的な短絡論理が使用されます。循環参照を使用すると、実行時エラーが発生します。

例5-12は、equalsフィルタの定義方法を示しています(RoleRefおよびStringRefは定義済の列です)。

例5-12 レポートでのequalsフィルタの使用方法

<filters>
<filter id="equals">
<type>equals</type>
<params>
<column-ref>RoleRef</column-ref>
<column-ref>StringRef</column-ref>
</params>
</filter>
</filters>

例5-13は、PacketsResentの値がPacketsSentの値より大きいものを判別するフィルタの定義方法を示しています(PacketsResentおよびPacketsSentは有効な列参照であることを前提としています)。

例5-13 レポートでのgreaterフィルタの定義方法

<filters>
<filter id="greaterRef">
<type>greater</type>
<params>
<column-ref>PacketsResent</column-ref>
<column-ref>PacketsSent</column-ref>
</params>
</filter>
</filters>

例5-14は、PacketsResentの値がPacketsSentの値より小さいものを判別するフィルタの定義方法を示しています(PacketsResentおよびPacketsSentは有効な列参照であることを前提としています)。

例5-14 レポートでのlessフィルタの定義方法

<filters>
<filter id="greaterRef">
<type>less</type>
<params>
<column-ref>PacketsResent</column-ref>
<column-ref>PacketsSent</column-ref>
</params>
</filter>
</filters>

例5-15は、andフィルタの定義方法を示しています(すべてのcolumn-ref値が有効であることを前提としています)。

例5-15 レポートでのandフィルタの定義方法

<filters>
<filter id="equalsRef">
<type>equals</type>
<params>
<column-ref>RoleRef</column-ref>
<column-ref>StringRef</column-ref>
</params>
</filter>

<filter id="greaterRef">
<type>greater</type>
<params>
<column-ref>PacketsResent</column-ref>
<column-ref>PacketsSent</column-ref>
</params>
</filter>

<filter>
<type>and</type>
<params>
<filter-ref>greaterRef</filter-ref>
<filter-ref>equalsRef</filter-ref>
</params>
</filter>
</filters>

例5-16は、orフィルタの定義方法を示しています(すべてのcolumn-ref値が有効であることを前提としています)。

例5-16 レポートでのorフィルタの定義方法

<filters>
<filter id="equalsRef">
<type>equals</type>
<params>
<column-ref>RoleRef</column-ref>
<column-ref>StringRef</column-ref>
</params>
</filter>

<filter id="greaterRef">
<type>greater</type>
<params>
<column-ref>PacketsResent</column-ref>
<column-ref>PacketsSent</column-ref>
</params>
</filter>

<filter>
<type>or</type>
<params>
<filter-ref>greaterRef</filter-ref>
<filter-ref>equalsRef</filter-ref>
</params>
</filter>
</filters>

例5-17は、not equalsフィルタの定義方法を示しています(RoleRefおよびStringRefは定義済の列です)。

例5-17 レポートでのnot equalsフィルタの定義方法

<filters>
<filter id="equals">
<type>equals</type>
<params>
<column-ref>RoleRef</column-ref>
<column-ref>StringRef</column-ref>
</params>
</filter>

<filter id = "Not">
<type>not</type>
<params>
<filter-ref>equals</filter-ref>
</params>
</filter>
</filters>

5.2.5 レポートでの関数の使用

Reporterの関数を使用して、レポートの同じ行内のデータ要素について数値計算を実行できます。サポートされる関数は、Add、Subtract、MultiplyおよびDivideです。関数列は、他の関数列を(パラメータとして)組み込むこともできます。

5.2.5.1 関数の例

例5-18は、2つの列値(Attribute1およびAttribute2)を加算して、その結果を3番目の列(Addition)に入力する方法を示しています。

例5-18 加算した列値の他列への組込み

<column id="AttributeID1">
<name>Attribute1</name>
</column>

<column id="AttributeID2">
<name>Attribute2</name>
</column>

<column id="Addition">
<type>function</type>
<name>Add2Columns</name>
<header>Adding Columns</header>
<function-name>add</function-name>
<params>
<column-ref>AttributeID1</column-ref>
<column-ref>AttributeID2</column-ref>
</params>
</column>

例5-19は、ある列値(Attribute2)を他の列値(Attribute1)から減算して、その結果を3番目の列(Subtraction)に入力する方法を示しています。

例5-19 減算した列値の他列への組込み

<column id="AttributeID1">
<name>Attribute1</name>
</column>

<column id="AttributeID2">
<name>Attribute2</name>
</column>

<column id="Subtraction">
<type>function</type>
<name>Subtract2Columns</name>
<header>Difference</header>
<function-name>subtract</function-name>
<params>
<column-ref>AttributeID1</column-ref>
<column-ref>AttributeID2</column-ref>
</params>
</column>

例5-20は、2つの列値(Attribute1およびAttribute2)を乗算して、その結果を3番目の列(Multiplication)に入力する方法を示しています。

例5-20 乗算した列値の他列への組込み

<column id="AttributeID1">
<name>Attribute1</name>
</column>

<column id="AttributeID2">
<name>Attribute2</name>
</column>

<column id="Multiplication">
<type>function</type>
<name>Multiply2Columns</name>
<header>Multiply Columns</header>
<function-name>multiply</function-name>
<params>
<column-ref>AttributeID1</column-ref>
<column-ref>AttributeID2</column-ref>
</params>
</column>

例5-21は、ある列値(Attribute1)を別の列値(Attribute2)で除算して、その結果を3番目の列(Division)に入力する方法を示しています。すべての除算結果はDoubleデータ型になります。

例5-21 除算した列値の他列への組込み

<column id="AttributeID1">
<name>Attribute1</name>
</column>

<column id="AttributeID2">
<name>Attribute2</name>
</column>

<column id="Division">
<type>function</type>
<name>Dividing2Columns</name>
<header>Division</header>
<function-name>divide</function-name>
<params>
<column-ref>AttributeID1</column-ref>
<column-ref>AttributeID2</column-ref>
</params>
</column>

5.2.6 レポートでの集計機能の使用

Reporterの集計機能は、複数行を単一の値または行にまとめます。表5-3は、使用可能な集計のタイプを示しています。

表5-3 レポータの集計タイプ

型

説明

avg

列内のすべての値の平均値を計算します。

max

列内のすべての値の最大値を返します。

min

列内のすべての値の最小値を返します。

sum

列内のすべての値を加算します。

例5-22は、size列の中の値を合計する方法を示しています。

例5-22 列内の値の加算方法

<column id ="SumRef">
<type>function</type>
<column-ref>size</column-ref>>
<function-name>sum</function-name>
<header>Sum</header>
</column>

例5-23は、size列の中の値を平均する方法を示しています。

例5-23 列内の平均値の計算方法

<column id ="AverageRef">
<type>function</type>
<header>Average</header>
<column-ref>size</column-ref>
<function-name>avg</function-name>
</column>

例5-24は、size列の中の最大値を見つける方法を示しています。

例5-24 列内の最大値を求める方法

<column id ="MaximumRef">
<type>function</type>
<header>Maximum</header>
<column-ref>size</column-ref>
<function-name>max</function-name>
</column>

例5-25は、size列の中の最小値を見つける方法を示しています。

例5-25 列内の最小値を求める方法

<column id ="MinimumRef">
<type>function</type>
<header>Minimum</header>
<column-ref>size</column-ref>
<function-name>min</function-name>
</column>

5.2.7 デルタ関数の作成

レポートの中の多くの数値属性は、累積的に変化します。これらの値はMBeanでresetStatistics操作を実行した場合のみリセットされます。統計をリセットせずにシステムの状態を確認するために、レポータはdelta関数を使用します。delta関数は、列の現在値から前の値を減算し、その差異を返します。

レポータ・クライアントのマップに、レポートの前の値が保存されます。このマップは、デルタ・キーによってキー設定されています。デフォルトでは、デルタ・キーは属性のMBean名になります。ただし、MBeanとレポート内の行に1対1の関係が存在しない場合、またはMBean名がレポートの実行間で変更される可能性がある場合は、<params>セクションにある列を使用してデルタ・キーが計算されます。

注意:

デルタ関数は、レポートがレポート・バッチの一部として実行されている場合のみ正しく計算されます。

5.2.7.1 デルタ関数の例

例5-26は、属性のデルタ計算を含める方法を示しています(PacketsSentは定義済列であると仮定します。)

例5-26 属性のデルタ計算

<column id="DeltaPacketsSent">
<type>function</type>
<name>PacketsSent</name>
<header>Delta Sent</header>
<column-ref>PacketsSent</column-ref>
<function-name>delta</function-name>
</column>

例5-27は、別のdeltaキーを使用して属性のデルタ計算を含める方法を示しています(PacketsSent、NodeID、およびTimeStampは定義済列であると仮定します)。

例5-27 別のdeltaキーを使用した属性のデルタ計算

<column id="DeltaPacketsSent">
<type>function</type>
<name>PacketsSent</name>
<header>Delta Sent</header>
<column-ref>PacketsSent</column-ref>
<function-name>delta</function-name>
<params>
<column-ref>NodeID</column-ref>
<column-ref>TimeStamp</column-ref>
</params>
</column>

5.3 カスタム・レポート・グループ構成ファイルの作成

この項の各トピックでは、coherence-report-config.xsdファイルに基づいてレポート・グループ構成ファイルを作成する方法について説明します。この構成ファイルは、どのレポートを生成し、それらのレポートをどれくらいの頻度でリフレッシュして、どこに保存するかを判別するために実行時に使用されます。レポート・グループ構成ファイルには、必要に応じてレポート・パラメータも構成されます。レポート・グループ構成要素の詳細は、付録C「レポート・グループ構成要素」を参照してください。

この項の内容は次のとおりです。

- レポートのリフレッシュ頻度の指定

- レポートの出力ディレクトリの指定

- レポート・リストの指定

5.3.1 レポートのリフレッシュ頻度の指定

<frequency>要素は、レポートのリフレッシュ頻度を指定します。適切なリフレッシュ頻度を選択することが重要です。このリフレッシュ頻度が短すぎると、レポートのデータが過多になるためかなりのディスク領域を消費します。リフレッシュ頻度が長すぎると、レポートに十分な情報が記述されません。値は秒(s)または分(m)単位で入力します。次に例を示します。

<?xml version="1.0"?>

<report-group xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-report-group-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-report-group-config coherence-report-group-config.xsd">
<frequency>5m</frequency>
...

5.3.2 レポートの出力ディレクトリの指定

<output-directory>要素は、レポートの保存先のディレクトリ・パスを指定します。このディレクトリ・パスは、レポート構成ファイルで定義されている出力ファイル名の前に追加されます。「レポートの一般的な特性の指定」を参照してください。メンバーが実行しているユーザー名には、このパスに対する読取り/書込みアクセスが必要です。パスは、絶対パスまたはクラスタ・メンバーが起動されるディレクトリに対する相対パス(./)として指定できます。次の例では、レポートを/outputディレクトリに保存します。

<?xml version="1.0"?>

<report-group xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-report-group-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-report-group-config coherence-report-group-config.xsd">
<frequency>5m</frequency>
<output-directory system-property=
"tangosol.coherence.reporter.output.directory">/output</output-directory>
...

<output-directory>要素は、system-property属性の使用をサポートします。system-property属性値は実行時に、構成された出力ディレクトリをオーバーライドするために使用します。システム・プロパティが出力ディレクトリをオーバーライドするために使用されていない場合は、デフォルト出力ディレクトリ(./)が使用されます。任意のユーザー定義名を属性値として使用できます。次の例では、事前定義されたレポート・グループ・ファイルが使用するデフォルトのシステム・プロパティ定義を示しています。

<?xml version="1.0"?>

<report-group xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-report-group-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-report-group-config coherence-report-group-config.xsd">
<frequency>1m</frequency>
<output-directory system-property=
"tangosol.coherence.reporter.output.directory">./</output-directory>
...

実行時に、システム・プロパティを指定して、その値のパスを含めてください。次に例を示します。

-Dtangosol.coherence.reporter.output.directory=/mydirectory

5.3.3 レポート・リストの指定

<report-list>要素は、任意の数のレポート構成ファイルの名前と場所を指定します。パスには、ファイルまたはURLを含められます。レポート構成ファイルを入力するには、<report-config>要素内に<location>要素を追加します。次に例を示します。

<?xml version="1.0"?>

<report-group xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-report-group-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-report-group-config coherence-report-group-config.xsd">
<frequency>5m</frequency>
<output-directory>/output</output-directory>
<report-list>
<report-config>
<location>/config/myReport.xml</location>
</report-config>
<report-config>
<location>config/aSecondReport.xml</location>
</report-config>
</report-list>
</report-group>

5.4 生成するカスタム・レポートの構成

生成するカスタム・レポートを構成するには、レポートを有効化して、Reporterでカスタム・レポート・グループ構成ファイルの使用を構成する必要があります。レポート機能の有効化の詳細は、「クラスタ・メンバーでのOracle Coherenceのレポート機能の有効化」を参照してください。

レポータがカスタム・レポート・グループ構成ファイルを使用するように構成するには、オペレーション・オーバーライド・ファイルを編集し、<reporter>要素内で、カスタム・レポート・グループ構成ファイルの場所に設定されている<configuration>要素を追加します。次の例では、レポートを有効化して、カスタム・レポート・グループ構成ファイルを設定しています。

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-operational-config coherence-operational-config.xsd">
<management-config>
<reporter>
<configuration
system-property="tangosol.coherence.management.report.configuration">
my-report-group.xml</configuration>
<autostart
system-property="tangosol.coherence.management.report.autostart">true
</autostart>
</reporter>
</management-config>
</coherence>

tangosol.coherence.management.report.autostartおよびtangosol.coherence.management.report.configurationシステム・プロパティにより、レポート機能を有効化してレポート・グループ構成ファイルを構成することもできます。次に例を示します。

-Dtangosol.coherence.management.report.autostart=true
-Dtangosol.coherence.management.report.configuration=my-report-group.xml

6 レポート内容の分析

この章では、Oracle Coherenceに含まれる事前定義済レポートについて説明します。開発者およびシステム管理者は、レポートを使用して操作統計を監視および分析したり、潜在的な問題のトラブルシューティングを行います。Oracle Coherence*Web固有のレポートについては、『Oracle Coherence*WebでのHTTPセッション・マネージメントの管理』を参照してください。

この章には次の項が含まれます:

- キャッシュ・サイズ・レポートの理解

- キャッシュの使用レポートの理解

- フラッシュ・ジャーナル・レポートの理解

- 管理レポートの理解

- メモリー・ステータス・レポートの理解

- ネットワーク・ヘルス詳細レポートの理解

- ネットワーク・ヘルス・レポートの理解

- ノード・リスト・レポートの理解

- プロキシ・レポートの理解

- RAMジャーナル・レポートの理解

- サービス・レポートの理解

6.1 キャッシュ・サイズ・レポートの理解

キャッシュ・サイズ・レポートは、キャッシュ内にあるオブジェクトの数とサイズに基づいてキャッシュ・サイズを示します。このサイズは、索引やオーバーヘッドを考慮に入れていません。<local-scheme>の<unit-calculator>サブ要素をBINARYに設定したキャッシュのサイズが報告されます。このキャッシュ・サイズ・レポートの名前は、timestamp-cache-size.txtです。ここで、タイムスタンプはYYYYMMDDHH形式になります。たとえば、ファイル2009013101-cache-size.txtは、2009年1月31日の午前1時のキャッシュ・サイズ・レポートを表します。表6-1は、キャッシュ・サイズ・レポートの内容を示します。

表6-1 キャッシュ・サイズ・レポートの内容

列

データ型

説明

Batch Counter

Long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、レポータが再起動され、メンバー全体での一貫性がない場合にリセットされます。しかし、ファイルの統合を試みる際には役立ちます。

Cache Name

String

キャッシュの名前

CacheSize

Double

キャッシュ内のオブジェクトの数

MemoryBytes

Double

キャッシュ内のオブジェクトによって消費されたバイト数

MemoryMB

Double

キャッシュ内のオブジェクトによって消費されたメガバイト(MB)数

Avg Object Size

Double

各オブジェクトの平均メモリー消費量

6.2 キャッシュの使用レポートの理解

キャッシュの使用レポートは、キャッシュの使用(get、put、エビクションなど)に関する情報を提供します。このキャッシュの使用レポートの名前は、timestamp-cache-usage.txtです。ここで、タイムスタンプはYYYYMMDDHH形式になります。たとえば、ファイル2010013113-cache-usage.txtは、2010年1月31日の午後1時のキャッシュ使用レポートを表します。表6-2は、キャッシュ使用レポートの内容を示します。

表6-2 キャッシュの使用レポートの内容

列

データ型

説明

Batch Counter

Long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、レポータが再起動され、メンバー全体での一貫性がない場合にリセットされます。しかし、ファイルの統合を試みる際には役立ちます。

Report Time

Date

レポートの各リフレッシュのタイムスタンプ

Service

String

キャッシュ・サービスの名前

Cache Name

String

キャッシュの名前

Tier

String

キャッシュがフロント層(ローカル・キャッシュ)とバック層(リモート・キャッシュ)のどちらに配置されているのか。値はfrontまたはbackです。

Total Puts

Double

前回レポートがリフレッシュされてからクラスタ全体でキャッシュに対してputが実行された合計回数

Total Puts Millis

Double

前回レポートがリフレッシュされてからクラスタ全体でput()呼出しごとにかかった合計時間(ミリ秒)

Total Gets

Double

前回レポートがリフレッシュされてからクラスタ全体でキャッシュに対してgetが実行された合計回数

Total Gets Millis

Double

前回レポートがリフレッシュされてからクラスタ全体でget()呼出しごとにかかった合計時間(ミリ秒)

Total Hits

Double

前回レポートがリフレッシュされてからクラスタ全体でキャッシュに対してアクセスした合計回数

Total Hits Millis

Double

前回レポートがリフレッシュされてからクラスタ全体でヒットだったget()呼出しごとにかかった合計時間(ミリ秒)

Total Misses

Double

前回レポートがリフレッシュされてからクラスタ全体でのキャッシュに対するミスの合計数

Total Misses Millis

Double

前回レポートがリフレッシュされてからクラスタ全体でミスだったget()呼出しごとにかかった合計時間(ミリ秒)

Total Writes

Double

前回レポートがリフレッシュされてからクラスタ全体でキャッシュについて記憶域への書込みが実行された合計回数

Total Write Millis

Double

前回レポートがリフレッシュされてからクラスタ全体で記憶域への書込み操作にかかった合計時間(ミリ秒)

Total Reads

Double

前回レポートがリフレッシュされてからクラスタ全体でキャッシュのキャッシュ・ストアから読取りが実行された合計回数

Total Read Millis

Double

前回レポートが実行されてからクラスタ全体でキャッシュのキャッシュ・ストアの読取りにかかった合計時間(ミリ秒)

Total Failures

Long

前回レポートがリフレッシュされてからクラスタ全体でキャッシュについて記憶域で障害が発生した合計回数

Total Queue

Long

クラスタ全体のキュー・リンク・サイズの合計

Evictions

Long

前回レポートがリフレッシュされてからクラスタ全体でキャッシュに対してエビクションが実行された合計回数

Cache Prunes

Long

前回レポートがリフレッシュされてからクラスタ全体でキャッシュに対してプルーニングが実行された合計回数

Cache Prunes Millis

Long

前回レポートがリフレッシュされてからクラスタ全体でプルーニング操作にかかった合計時間(ミリ秒)

6.3 フラッシュ・ジャーナル・レポートの理解

フラッシュ・ジャーナル・レポートには、フラッシュ・メモリーにデータがどれくらい効率的に保存されているかを確認するために役立つ統計が表示されます。このフラッシュ・ジャーナル・レポートの名前はtimestamp-flashjournal.txtです。ここで、タイムスタンプはYYYYMMDDHH形式になります。たとえば、ファイル2010013113-flashjournal.txtは、2010年1月31日の午後1時のフラッシュ・ジャーナル・レポートを表します。表6-3は、フラッシュ・ジャーナル・レポートの内容を示します。

表6-3 フラッシュ・ジャーナル・レポートの内容

列

データ型

説明

Batch Counter

Long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、レポータが再起動され、メンバー全体での一貫性がない場合にリセットされます。しかし、ファイルの統合を試みる際には役立ちます。

Report Time

Date

レポートの各リフレッシュのタイムスタンプ

Node ID

Long

フラッシュ・ジャーナルの統計の対象メンバー

FileCount

Integer

現在使用中のジャーナル・ファイルの数

BinaryStoreCount

Integer

このジャーナルを使用しているアクティブなJournalBinaryStoreオブジェクトの数

TotalDataSize

Long

このジャーナルに現在保存されているバイト単位のデータ量

TotalFileSize

Long

このジャーナルのすべてのジャーナル・ファイルの合計サイズ

BacklogCount

Integer

まだジャーナルに格納されていない、シリアライズされた値の数

BacklogSize

Integer

バックログのバイト単位の最大サイズ。バックログは、まだジャーナルに格納されていない、シリアライズされた値の数です。クライアント・スレッドは、この制限を超えるとブロックされ、バックログが制限を下回るまでブロックされたままになります。

PoolSize

Integer

プール内の使用可能なバッファのバイト単位での合計サイズ

6.4 管理レポートの理解

管理レポートには、管理フレームワークがすべてのMBeanに対してタイムリな管理データを表示しているかどうかを確認するためのリフレッシュ統計があります。この管理レポートの名前はtimestamp-management.txtです。ここで、タイムスタンプはYYYYMMDDHH形式になります。たとえば、ファイル2009013113-Management.txtは、2009年1月31日の午後1時の管理レポートを表します。表6-4は、管理レポートの内容を示します。

表6-4 管理レポートの内容

列

データ型

説明

Batch Counter

Long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、レポータが再起動され、メンバー全体での一貫性がない場合にリセットされます。しかし、ファイルの統合を試みる際には役立ちます。

ReportTime

Date

レポートの各リフレッシュのタイムスタンプ

RefreshPolicy

String

現在設定されているリフレッシュ・ポリシー。このポリシーは、リモート・モデルのデータのリフレッシュ方法を決定します。

RefreshTime

Date

このモデルが、対応するメンバーから前回取得されたときのタイムスタンプ。ローカル・サーバーの場合はローカル時間になります。

RefreshExcessCount

Long

MBeanサーバーによって情報が予測的にリフレッシュされ、その情報がアクセスされなかった回数

RefreshCount

Long

統計が最後にリセットされてから取得されたスナップショットの合計数

RefreshPredictionCount

Long

MBeanサーバーによって予測的なアルゴリズムが使用され、MBean情報がリフレッシュされた回数

RefreshTimeoutCount

Long

この管理メンバーがリモートMBean属性のリフレッシュ試行中にタイムアウトした回数

6.5 メモリー・ステータス・レポートの理解

メモリー・ステータス・レポートには、各メンバーおよびグリッド全体のメモリー消費を把握するために役立つ統計が含まれます。メモリー・ステータス・レポートは、レポート・グループの一部として実行する必要があります。メモリー・ステータス・レポートは、プラットフォームMBeanの情報に依存しています。「MBeanのフィルタ処理」を参照してください。このメモリー・ステータス・レポートの名前はtimestamp-memory-status.txtです。ここで、タイムスタンプはYYYYMMDDHH形式になります。たとえば、ファイル2009013115-memory-status.txtは、2009年1月31日の午後3時のメモリー・ステータス・レポートを表します。表6-5は、メモリー・ステータス・レポートの内容を示します。

表6-5 メモリー・ステータス・レポートの内容

列

データ型

説明

Batch Counter

Long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、レポータが再起動され、メンバー全体での一貫性がない場合にリセットされます。しかし、ファイルの統合を試みる際には役立ちます。

Report Time

Date

レポートの各リフレッシュのタイムスタンプ

JVM Uptime

Long

前回のJVM起動からの経過時間

Node Id

Long

メモリー統計の対象メンバー

Gc Name

String

ガベージ・コレクタの名前

CollectionCount

Long

前回のJVM起動以降のガベージ・コレクションの回数

Delta Collection Count

Long

前回のレポート・リフレッシュ以降のガベージ・コレクションの回数

CollectTime

Long

JVMが起動後にガベージ・コレクションに費やした時間(ミリ秒)

Delta Collect Time

Long

前回のレポート・リフレッシュ以降にJVMがガベージ・コレクションに費やした時間(ミリ秒)

Last GC Start Time

Long

最後のガベージ・コレクションの開始時間

Last GC Duration Millis

Long

最後のガベージ・コレクションの合計時間

Last GC Stop Time

Long

最後のガベージ・コレクションの停止時間

Heap Committed

Long

レポート実行時点におけるコミット済ヒープ・バイト数

Heap Init

Long

レポート実行時点における初期化済ヒープ・バイト数

Heap Max

Long

JVMが起動後に使用した最大バイト数

Heap Used

Long

レポート実行時点でJVMが使用していたバイト数

6.6 ネットワーク・ヘルス詳細レポートの理解

ネットワーク・ヘルス詳細レポートには、ネットワーク通信の状態を確認するためのメンバー・レベルの詳細が含まれます。このネットワーク・ヘルス詳細レポートの名前はtimestamp-network-health-detail.txtです。ここで、タイムスタンプはYYYYMMDDHH形式になります。たとえば、ファイル2009013114-network-health-detail.txtは、2009年1月31日の午後2時のネットワーク・ヘルス詳細レポートを表します。表6-6は、ネットワーク・ヘルス詳細レポートの内容を示します。

表6-6 ネットワーク・ヘルス詳細レポートの内容

列

データ型

説明

Batch Counter

Long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、レポータが再起動され、メンバー全体での一貫性がない場合にリセットされます。しかし、ファイルの統合を試みる際には役立ちます。

Report Time

Date

レポートの各リフレッシュのタイムスタンプ

RefreshTime

Date

管理情報が、対応するノードから前回取得されたときのシステム時刻。ローカル・サーバーはローカル時間を表示します。

Node Id

Long

ネットワーク統計の対象メンバー。

Tx Success

Double

メンバーにおけるパブリッシャの成功率。この値が、ネットワーク・ヘルス・ファイルのバッチ(表6-7を参照)に示されるMin Node Tx Success値の2%から3%以内にあり、Grid Tx Success値よりも10%以上低い場合は、対象メンバーとクラスタとの間に通信上の問題がある可能性があります。この成功率の低さの要因としては、CPUまたはネットワーク帯域幅の制約、あるいはネットワークの長い待機時間などが考えられます。

RX Success

Double

メンバーにおける受信側の成功率。この値が、ネットワーク・ヘルス・ファイルのバッチ(表6-7を参照)に示されるMin Node Rx Success値の2%から3%以内にあり、Grid Tx Success値よりも10%以上低い場合は、対象メンバーとクラスタとの間に通信上の問題がある可能性があります。この成功率の低さの要因としては、CPUまたはネットワーク帯域幅の制約、あるいはネットワークの長い待機時間などが考えられます。

PacketsSent

Double

メンバーから送信されたネットワーク・パケットの総数

Current Packets Sent

Long

前回のレポート・リフレッシュ以降にメンバーから送信されたパケットの数

PacketsResent

Long

メンバーから再送信されたネットワーク・パケットの総数。パケットの受信側が無効なパケットを受信した場合、または適切な時間内に確認パケットが送信されなかった場合、パケットは再送信されます。

Current Packet Resent

Long

前回のレポート・リフレッシュ以降にメンバーから再送信されたパケットの数

PacketsRepeated

Long

複数回受信したパケットの総数

Current Repeated

Long

前回のレポート・リフレッシュ以降に複数回受信したパケットの数

Packets Received

Long

メンバーが受信したパケットの総数

Current Packets Received

Long

前回のレポート・リフレッシュ以降にメンバーが受信したパケットの総数

6.7 ネットワーク・ヘルス・レポートの理解

ネットワーク・ヘルス・レポートには、ネットワーク通信の状態を確認するために役立つ主要な集計情報が含まれます。このネットワーク・ヘルス・レポートの名前はtimestamp-network-health.txtです。ここで、タイムスタンプはYYYYMMDDHH形式になります。たとえば、ファイル2009013113-network-health.txtは、2009年1月31日の午後1時のネットワーク・ヘルス・レポートを表します。表6-7は、ネットワーク・ヘルス・レポートの内容を示します。

表6-7 ネットワーク・ヘルス・レポートの内容

列

データ型

説明

Batch Counter

Long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、レポータが再起動され、メンバー全体での一貫性がない場合にリセットされます。しかし、ファイルの統合を試みる際には役立ちます。

Report Time

Date

レポートの各リフレッシュのタイムスタンプ

Min Node Rx Success

Double

クラスタ内のメンバーにおける受信側の最小成功率。この値が、Grid Rx Success率よりもかなり低い(10%以上低い)場合は、ネットワーク・ヘルス詳細レポートを分析してください。

Grid Rx Success

Double

グリッド全体における受信側の成功率。この値が90%よりも低い場合、ネットワーク・ヘルス詳細レポートを分析してください。

Min Node Tx Success

Double

クラスタ内のメンバーにおけるパブリッシャの最小成功率。この値が、Grid Rx Success率よりもかなり低い(10%以上低い)場合は、ネットワーク・ヘルス詳細レポートを分析してください。

Grid TX Success

Double

グリッド全体におけるパブリッシャの成功率。この値が90%よりも低い場合、ネットワーク・ヘルス詳細レポートを分析してください。

6.8 ノード・リスト・レポートの理解

ノード・リスト・レポートは、クラスタ・メンバーの識別に役立つ情報を提供します。ノード識別子(nodeId)は一時的であるという性質をもつため、レポータは、メンバーのリストとユーザー定義のメンバーの識別情報をログに出力します。『Oracle Coherenceでのアプリケーションの開発』の<member-identity要素を参照してください。このノード・リスト・レポートの名前はtimestamp-nodes.txtです。ここで、タイムスタンプはYYYYMMDDHH形式になります。たとえば、ファイル2009013101-nodes.txtは、2009年1月31日の午前1時のノード・リスト・レポートを表します。表6-8は、ノード・リスト・レポートの内容を示します。

表6-8 ノード・リスト・レポートの内容

列

データ型

説明

Batch Counter

Long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、レポータが再起動され、メンバー全体での一貫性がない場合にリセットされます。しかし、ファイルの統合を試みる際には役立ちます。

Report Time

Date

レポートの各リフレッシュのタイムスタンプ

RefreshTime

Date/Time

情報がリモート・メンバーからリフレッシュされた時間。この時刻がバッチに出力された他の行のリフレッシュ時刻と異なる場合、このメンバーは適時に応答しなかったことになります。この現象は一般に、ガベージ・コレクションを実行しているメンバーで発生します。リフレッシュ日付が古いメンバーに関する情報は信頼できません。

Node Id

String

数値のメンバー識別子

UnicastAddress

String

メンバーのユニキャスト・アドレス

MemberName

String

メンバー名

ProcessName

String

メンバーのプロセス名

RoleName

String

メンバーのロール名

MachineName

String

メンバーのコンピュータ名

RackName

String

メンバーのラック名

SiteName

String

メンバーのサイト名

6.9 プロキシ・レポートの理解

プロキシ・レポートには、プロキシ・サーバーに関する情報およびクライアントに転送された情報が含まれます。このプロキシ・レポートの名前はtimestamp-network-report-proxy.txtです。ここで、タイムスタンプはYYYYMMDDHH形式になります。たとえば、ファイル2009013101-report-proxy.txtは、2009年1月31日の午前1時のプロキシ・レポートを表します。表6-9は、プロキシ・レポートの内容を示します。

表6-9 プロキシ・レポートの内容

列

データ型

説明

Batch Counter

Long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、レポータが再起動され、メンバー全体での一貫性がない場合にリセットされます。しかし、ファイルの統合を試みる際には役立ちます。

Report Time

Date

レポートの各リフレッシュのタイムスタンプ

RefreshTime

Date/Time

このモデルが、対応するメンバーから前回取得されたときのタイムスタンプ。ローカル・サーバーの場合はローカル時間になります。

Service Name

String

プロキシ・サービスの名前

HostIp

String

プロキシ・サービスのIPアドレスおよびポート

NodeId

String

数値のメンバー識別子

ConnectionCount

Long

プロキシ・サービスの現在の接続数

OutgoingByteBacklog

Long

プロキシ・サービスによる送信のキューに入れられたバイト数

OutgoingMessageBacklog

Long

プロキシ・サービスによるキューに入れられたメッセージ数

Bytes Sent

Long

前回のレポート・リフレッシュ以降にプロキシ・サービスから送信されたバイト数

Bytes Received

Long

前回のレポート・リフレッシュ以降にプロキシ・サービスが受信したバイト数

Messages Sent

Long

前回のレポート・リフレッシュ以降にプロキシ・サービスから送信されたメッセージ数

Messages Received

Long

前回のレポート・リフレッシュ以降にプロキシ・サービスが受信したメッセージ数

6.10 RAMジャーナル・レポートの理解

RAMジャーナル・レポートには、RAMメモリーにデータがどれくらい効率的に保存されているかを確認するために役立つ統計が表示されます。このRAMジャーナル・レポートの名前はtimestamp-ramjournal.txtです。ここで、タイムスタンプはYYYYMMDDHH形式になります。たとえば、ファイル2010013113-ramjournal.txtは、2010年1月31日の午後1時のRAMジャーナル・レポートを表します。表6-10は、RAMジャーナル・レポートの内容を示します。

表6-10 RAMジャーナル・レポートの内容

列

データ型

説明

Batch Counter

Long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、レポータが再起動され、メンバー全体での一貫性がない場合にリセットされます。しかし、ファイルの統合を試みる際には役立ちます。

Report Time

Date

レポートの各リフレッシュのタイムスタンプ

Node Id

Long

RAMジャーナルの統計の対象メンバー

FileCount

Integer

現在使用中のジャーナル・ファイルの数

BinaryStoreCount

Integer

このジャーナルを使用しているアクティブなJournalBinaryStoreオブジェクトの数

TotalDataSize

Long

このジャーナルに現在保存されているバイト単位のデータ量

TotalFileSize

Long

このジャーナルのすべてのジャーナル・ファイルの合計サイズ

6.11 サービス・レポートの理解

サービス・レポートには、サービスのヘルスおよびパフォーマンスを監視するための情報が含まれます。Request CountおよびTask Countの各値は、サービスのパフォーマンスとスループットを確認する場合に使用します。RequestPendingCountおよびTask Backlogの各値は、容量の問題やブロックされたプロセスの特定に使用します。Task Hung Count、Task Timeout Count、Thread Abandoned Count、およびRequest Timeout Countの各値は、システムで発生した実行の失敗数を示します。このサービス・レポートの名前はtimestamp-service.txtです。ここで、タイムスタンプはYYYYMMDDHH形式になります。たとえば、ファイル2010013113-service.txtは、2010年1月31日の午後1時のサービス・レポートを表します。表6-11は、サービス・レポートの内容を示します。

表6-11 サービス・レポートの内容

列

データ型

説明

Batch Counter

Long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、レポータが再起動され、メンバー全体での一貫性がない場合にリセットされます。しかし、ファイルの統合を試みる際には役立ちます。

Report Time

Date

レポートの各リフレッシュのタイムスタンプ

Service

String

サービス名

Node Id

String

数値のメンバー識別子

RefreshTime

Date

サービス情報がリモート・メンバーから更新されたシステム時間

Request Count

Long

前回のレポート・リフレッシュ以降のリクエスト数

RequestPendingCount

Long

レポート実行時点における未処理のリクエスト数

RequestPendingDuration

Long

レポート実行時点における未処理リクエストの待機時間

Request Timeout Count

Long

前回のレポート・リフレッシュ以降のリクエストのタイムアウト回数

Task Count

Long

前回のレポート・リフレッシュ以降に実行されたタスクの数

TaskBacklog

Long

レポート実行時点におけるタスクのバックログ

Task Timeout Count

Long

前回のレポート・リフレッシュ以降のタスクのタイムアウト回数

Task Hung Count

Long

前回のレポート・リフレッシュ以降にハングしたタスクの数

Thread Abandoned Count

Long

前回のレポート・リフレッシュ以降に破棄されたスレッドの数

A Oracle Coherence MBeanのリファレンス

この付録では、Oracle Coherenceの様々な部分を管理および監視するためのMBeanのリファレンスについて説明しています。このリファレンスでは、MBeanの属性と操作について詳細に説明します。

Registrationインタフェースには、MBeanの説明も含まれます。Oracle Coherence Java APIリファレンスのRegistrationインタフェースを参照してください。MBean対応エージェント(JConsoleなど)でもMBean情報は表示できます。Oracle Coherence MBeanへのアクセス方法の詳細は、第2章「JMXを使用したOracle Coherenceの管理」を参照してください。

表A-1は、Oracle Coherenceの管理および監視に使用するMBeanのリストです。

表A-1 Oracle Coherence MBean

MBean

説明

CacheMBean

キャッシュを表します。1つのクラスタ・メンバーには、この管理対象Beanのゼロ個以上のインスタンスが含まれます。

ClusterMBean

クラスタを表します。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。

ClusterNodeMBean

クラスタ・メンバーを表します。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。

ConnectionManagerMBean

Oracle Coherence*Extendプロキシを表します。1つのクラスタ・メンバーには、この管理対象Beanのゼロ個以上のインスタンスが含まれます。

ConnectionMBean

Oracle Coherence*Extendを介したクライアントのリモート接続を表します。1つのクラスタ・メンバーには、この管理対象Beanのゼロ個以上のインスタンスが含まれます。

FlashJournalRM

フラッシュ・ジャーナル・リソース・マネージャを表します。管理対象Beanは、JournalMBeanインタフェースのインスタンスです。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。

ManagementMBean

グリッドJMXインフラストラクチャを表します。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。

PointToPointMBean

2つのクラスタ・メンバー間のネットワーク・ステータスを表します。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。

RamJournalRM

RAMジャーナル・リソース・マネージャを表します。管理対象Beanは、JournalMBeanインタフェースのインスタンスです。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。

ReporterMBean

Oracle Coherenceレポータを表します。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。

ServiceMBean

クラスタ化されたサービスを表します。1つのクラスタ・メンバーには、この管理対象Beanのゼロ個以上のインスタンスが含まれます。

StorageManagerMBean

記憶域が有効化された分散キャッシュ・サービスの記憶域インスタンスを表します。1つのクラスタ・メンバーには、この管理対象Beanのゼロ個以上のインスタンスが含まれます。

TransactionManagerMBean

トランザクション・マネージャを表します。1つのクラスタ・メンバーには、この管理対象Beanのゼロ個以上のインスタンスが含まれます。

CacheMBean

CacheMBean MBeanはキャッシュを表します。1つのクラスタ・メンバーには、各データ・サービスの種類(分散、レプリケーションなど)について構成されたキャッシュの数に応じて、この管理対象Beanのゼロ個以上のインスタンスが含まれます。このMBeanは、キャッシュの操作およびパフォーマンスに関する統計を提供します。MBean属性のいくつかは書込み可能であり、キャッシュの動作がリアルタイムに変更されます。

MBeanのオブジェクト名は次のようになります。

type=Cache,service=service name,name=cache name,nodeId=cluster node id,tier=tier tag

注意:

CacheMBean MBeanには、トランザクション・キャッシュでは使用できない属性が多く含まれています。使用できない属性が呼び出されると、トランザクション・キャッシュは-1の値を返します。サポートされている属性のリストおよびトランザクション固有の説明については、『Oracle Coherenceでのアプリケーションの開発』を参照してください。

属性

表A-2は、CacheMBeanの属性を示しています。

表A-2 CacheMBeanの属性

属性

型

アクセス

説明

AverageGetMillis

Double

読取り専用

統計が最後にリセットされてから行われたget()呼出し当たりの平均ミリ秒です

AverageHitMillis

Double

読取り専用

統計が最後にリセットされてから行われた、ヒットだったget()呼出し当たりの平均ミリ秒です

AverageMissMillis

Double

読取り専用

統計が最後にリセットされてから行われた、ミスだったget()呼出し当たりの平均ミリ秒です

AveragePutMillis

Double

読取り専用

統計が最後にリセットされてから行われたput()呼出し当たりの平均ミリ秒です

BatchFactor

Double

読取り/書込み

BatchFactor属性は、遅延書込みのキュー・エントリの適切な時間を計算する際に使用されます。QueueDelay間隔と同程度遅延書込みキューに入れられている場合、キュー・エントリは書込み操作に「適切である」と判断されます。ソフト熟成時間は、実際の熟成時間より前の時点になります。これより後では、エントリが(その他のすべての熟成エントリとソフト熟成エントリとともに)キャッシュ・ストアに対するバッチの非同期の書込み操作に組み込まれます。この属性が適用されるのは、非同期書込みが有効であり(つまり、QueueDelay属性の値がゼロより大きい)、かつキャッシュ・ストアがstoreAll()メソッドを実装している場合のみです。要素の値は、QueueDelay間隔の割合で表します。有効な値は[0.0, 1.0]の範囲のダブルです。

CacheHits

Long

読取り専用

統計が最後にリセットされてからのおよそのキャッシュ・アクセス数。キャッシュ・ヒットとは、エントリがこのマップに存在する読取り操作の呼出し(つまりget())です。

CacheHitsMillis

Long

読取り専用

エントリがこのマップに存在するget()操作の合計ミリ秒(統計が最後にリセットされてからの)

CacheMisses

Long

読取り専用

統計が最後にリセットされてからのおよそのキャッシュ・ミス数

CacheMissesMillis

Long

読取り専用

エントリがこのマップに存在しないget()操作の合計ミリ秒(統計が最後にリセットされてからの)

CachePrunes

Long

読取り専用

統計が最後にリセットされてからのプルーニング操作の数。プルーニング操作は、キャッシュがHighUnitsにより指定された高水位標に達するたびに実行されます。

CachePrunesMillis

Long

読取り専用

統計が最後にリセットされてから使用されたプルーニング操作の合計ミリ秒

Description

String

読取り専用

キャッシュの説明

ExpiryDelay

Integer

読取り/書込み

キャッシュ・エントリの有効期限(ミリ秒単位)です。値が0の場合は、有効期限の自動失効が無効であることを示します。この属性を変更しても、有効期限の失効をスケジュールされた既存のエントリには影響しません。

HighUnits

Integer

読取り/書込み

キャッシュ・サイズの測定単位の制限。キャッシュが最大単位レベルに達すると、そのキャッシュは自動的に削除されます。これはしばしば、キャッシュの高水位標と呼ばれます。

HitProbability

Double

読取り専用

統計が最後にリセットされてから行われた、次の呼出しがヒットであるおよその確率(0 <= p <= 1)

LowUnits

Integer

読取り/書込み

プルーニング時にキャッシュが縮小するユニット数です。これはしばしば、キャッシュの低水位標と呼ばれます

PersistenceType

String

読取り専用

このキャッシュの永続性タイプです。可能な値は、NONE、READ-ONLY、WRITE-THROUGH、WRITE-BEHINDです。

QueueDelay

Integer

読取り/書込み

ライトビハインド・キューに追加されたエントリが、キャッシュ・ストアを使用して格納されるまでのキューでの待ち秒数です。この属性は、永続性タイプがWRITE-BEHINDである場合にのみ適用されます。

QueueSize

Integer

読取り専用

ライトビハインド・キューのサイズです。この属性は、永続性タイプがWRITE-BEHINDである場合にのみ適用されます。

RefreshFactor

Double

読取り/書込み

この属性は、キャッシュ・エントリのソフト失効時間の計算に使用されます。ソフト失効時間は、実際の失効時間より前の時点になります。これより後では、エントリへのアクセス・リクエストによって、エントリに対する非同期のロード・リクエストがスケジュール化されます。この属性は、自動失効がスケジュールされた内部ローカル・キャッシュがある、読取り/書込みバッキング・マップにのみ適用されます。この要素の値は、内部ローカル・キャッシュの有効期限の割合として表されます。有効な値は[0.0, 1.0]の範囲のダブルです。係数がゼロの場合、スケジュール先行リフレッシュは無効になります。

RefreshTime

Date

読取り専用

このモデルが、対応するメンバーから前回取得されたときのタイムスタンプ。ローカル・サーバーの場合は、ローカル時間になります。

RequeueThreshold

Integer

読取り/書込み

追加のアクションを実行できるライトビハインド・キューのサイズ。サイズがゼロの場合、ライトビハインドの再キューは無効になります。それ以外の場合、この値は、対応するログ・メッセージの頻度を制御します。たとえば、この値が100の場合、ライトビハインド・キューのサイズが100の倍数になるたびにログ・メッセージが生成されます。

Size

Integer

読取り専用

キャッシュ内のエントリ数です

StoreAverageBatchSize

Long

読取り専用

統計が最後にリセットされてから行われた、キャッシュ・ストアの書込み操作ごとに格納されたエントリの平均数。store()メソッドのコールは1つのバッチとしてカウントされますが、storeAll()メソッドのコールは渡されたマップ・サイズのバッチとしてカウントされます。永続性タイプがNONEの場合、この値は-1です。

StoreAverageReadMillis

Long

読取り専用

統計が最後にリセットされてから行われた読取り操作当たりに使用された平均時間(ミリ秒)。永続性タイプがNONEの場合、この値は-1です。

StoreAverageWriteMillis

Long

読取り専用

統計が最後にリセットされてから行われた書込み操作当たりに使用された平均時間(ミリ秒)。永続性タイプがNONEの場合、この値は-1です。

StoreFailures

Long

読取り専用

統計が最後にリセットされてから発生したキャッシュ・ストア失敗(ロード、格納、消去操作)の総数。永続タイプがNONEの場合、この値は-1です。

StoreReadMillis

Long

読取り専用

統計が最後にリセットされてから、ロード操作に使用された累積時間(ミリ秒)。永続性タイプがNONEの場合、この値は-1です。

StoreReads

Long

読取り専用

統計が最後にリセットされてから行われたロード操作の総数。永続性タイプがNONEの場合、この値は-1です。

StoreWriteMillis

Long

読取り専用

統計が最後にリセットされてから、格納および消去操作に使用された累積時間(ミリ秒)。永続性タイプがNONEまたはREAD-ONLYの場合、この値は-1です。

StoreWrites

Long

読取り専用

統計が最後にリセットされてから行われた格納および消去操作の総数。永続性タイプがNONEまたはREAD-ONLYの場合、この値は-1です。

TotalGets

Long

読取り専用

統計が最後にリセットされてからのget()操作の総数

TotalGetsMillis

Long

読取り専用

統計が最後にリセットされてからのget()操作にかかった合計時間(ミリ秒)

TotalPuts

Long

読取り専用

統計が最後にリセットされてからのput()操作の総数

TotalPutsMillis

Long

読取り専用

統計が最後にリセットされてからのput()操作にかかった合計時間(ミリ秒)

UnitFactor

Integer

読取り専用

Units、LowUnits、およびHighUnitsの各プロパティの調整に使用する係数。たとえば、BINARY単位換算カリキュレータでは、係数1048576を使用してバイトをメガバイトに換算できます。

Units

Integer

読取り専用

単位で測定したキャッシュのサイズ。この値は、UnitFactorによって調整される必要があります。

操作

CacheMBean MBeanには、すべてのキャッシュ統計をリセットするresetStatistics操作が含まれます。

ClusterMBean

ClusterMBean MBeanはクラスタを表します。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。このMBeanは、クラスタに関する操作の統計を提供します。

MBeanのオブジェクト名は次のようになります。

type=Cluster

属性

表A-3は、ClusterMBeanの属性を示しています。

表A-3 ClusterMBeanの属性

属性

型

アクセス

説明

ClusterName

String

読取り専用

クラスタの名前

ClusterSize

Integer

読取り専用

クラスタ・メンバーの総数

LicenseMode

String

読取り専用

このクラスタが使用しているライセンス・モード。可能な値はEvaluation、Development、またはProductionです。

LocalMemberId

Integer

読取り専用

レポートMBeanサーバーと一緒に配置されているクラスタ・メンバーのメンバーID。クラスタ・サービスが実行されていない場合、この値は-1です。

MemberIds

Integer[]

読取り専用

既存のクラスタ・メンバーIDすべての配列

Members

String[]

読取り専用

既存のクラスタ・メンバーすべての配列

MembersDeparted

String[]

読取り専用

最近離脱したクラスタ・メンバーの情報を記述する文字列の配列。メンバーIDが再利用されると、そのメンバーはこの配列から削除されます。この情報はメンバーがクラスタに参加した時点から記述され、MBeanサーバー・メンバーがクラスタから離れたり再参加したりする時にリセットされます。MembersDepartureCountは、この配列のサイズではなく、離脱したメンバーの合計数を表します。

MembersDepartureCount

Long

読取り専用

この管理メンバーがクラスタに参加した時点、または統計がリセットされた時点から、このメンバーがクラスタからの他のメンバーの離脱を確認した回数。

OldestMemberId

Integer

読取り専用

シニア・クラスタのメンバーID。クラスタ・サービスが実行されていない場合、この値は-1です。

RefreshTime

Date

読取り専用

このモデルが、対応するメンバーから前回取得されたときのタイムスタンプ。ローカル・サーバーの場合は、ローカル時間になります。

Running

Boolean

読取り専用

クラスタを実行しているかどうかを指定します

Version

String

読取り専用

Oracle Coherenceのバージョン

操作

表A-4は、ClusterMBeanの操作を示しています。

表A-4 ClusterMBeanの操作

操作

パラメータ

戻り値の型

説明

ensureRunning

適用なし

Void

このメンバーでクラスタ・サービスが実行されていることを確認します

logClusterState

String sRole

Void

指定したロールで実行されているクラスタ・メンバーの状態を(スレッドのフル・ダンプおよび未処理のポーリングで)ログ出力します。クラスタ・メンバーのロールは、オペレーション・オーバーライド・ファイルの<member-identity要素内で定義されます。メンバーの識別情報を設定する方法の詳細は、『Oracle Coherenceでのアプリケーションの開発』を参照してください。sRoleパラメータを指定しないと(フィールドに値がないと)、すべてのクラスタ・メンバーの状態がログ出力されます。

shutdown

適用なし

Void

このメンバーのクラスタ・サービスをシャットダウンします

ClusterNodeMBean

ClusterNodeMBean MBeanはクラスタ・メンバーを表します。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。このMBeanは、クラスタのメンバーの操作およびパフォーマンスに関する統計を提供します。多くの属性は書込み可能であり、メンバーの動作がリアルタイムに変更されます。

MBeanのオブジェクト名は次のようになります。

type=Node,nodeId=cluster node id

属性

表A-5は、ClusterNodeMBeanの属性を示しています。

表A-5 ClusterNodeMBeanの属性

属性

型

アクセス

説明

BufferPublishSize

Integer

読取り/書込み

パブリッシャが使用するユニキャスト・データグラム・ソケットのバッファ・サイズで、パケット数で測定されます。実行時にこの値を変更することは、ネットワーク通信を一時休止させ、すべてのクラスタ・サービスの停止につながる場合もあるため、本質的に安全でない操作です。

BufferReceiveSize

Integer

読取り/書込み

受信側が使用するユニキャスト・データグラム・ソケットのバッファ・サイズで、パケット数で測定されます。実行時にこの値を変更することは、ネットワーク通信を一時休止させ、すべてのクラスタ・サービスの停止につながる場合もあるため、本質的に安全でない操作です。

CpuCount

Integer

読取り専用

このメンバーが実行されているコンピュータのCPUコアの数です

FlowControlEnabled

Boolean

読取り専用

FlowControlが有効かどうかを示します。フロー制御を有効にするには、『Oracle Coherenceでのアプリケーションの開発』の<flow-control要素を参照してください。

Id

Integer

読取り専用

現在メンバーを一意に識別し、そのメンバーが存続している間は変わらない短いメンバーID

LoggingDestination

String

読取り専用

ログ・システムによって使用される出力デバイスです。有効な値は、stdout、stderr、jdk、log4jまたはファイル名です。

LoggingFormat

String

読取り/書込み

ログ出力先に渡す前に、メッセージをフォーマットする方法を指定します

LoggingLevel

Integer

読取り/書込み

どのログ・メッセージをログ出力先に出力するかを指定します。有効な値は負でない整数です。-1の値はすべてのロガー出力を無効にします。

LoggingLimit

Integer

読取り/書込み

ロガー・デーモンがメッセージ・キューから処理する文字の最大数。この数を超過すると、キューに残っているメッセージがすべて破棄されます。有効な値は、0 - Integer.MAX_VALUE (2147483647)の範囲の整数です。値0はInteger.MAX_VALUEを意味します。

MachineId

Integer

読取り専用

このメンバーのコンピュータIDです

MachineName

String

読取り専用

コンピュータの一意の名前。名前は、同じコンピュータにあるすべてのメンバーでは同じであり、異なるコンピュータにあるメンバーでは異なる必要があります。

MemberName

String

読取り専用

メンバーの一意の名前。この名前はメンバーごとに一意となる必要があります。

MemoryAvailableMB

Integer

読取り専用

新規オブジェクトで使用可能なJVMのメモリーの合計量(MB)

MemoryMaxMB

Integer

読取り専用

JVMが使用するメモリーの最大量(MB)

MulticastAddress

String

読取り専用

このメンバーがグループ通信のために使用するマルチキャスト・ソケットIPアドレスです

MulticastEnabled

Boolean

読取り専用

メンバーがグループ通信にマルチキャストを使用するかどうか指定します。falseの場合、このメンバーは、クラスタに参加する際にはWellKnownAddresses属性にリストされたアドレスを使用し、クラスタの他のメンバーと通信する際にはポイントツーポイントのユニキャストを使用します。

MulticastPort

Integer

読取り専用

このメンバーがグループ通信のために使用するマルチキャスト・ソケット・ポートです

MulticastThreshold

Integer

読取り/書込み

クラスタにあるパケットの送信先サーバーの割合(0から100)です。この値より大きければパケットはマルチキャストを使用して送信され、小さければパケットはユニキャストを使用して送信されます

MulticastTTL

Integer

読取り専用

メンバーのマルチキャスト・ソケットで送信されたマルチキャスト・パケットの有効時間です

NackEnabled

Boolean

読取り専用

早期にパケットの損失を検知するプロトコルを有効にするかどうか指定します

NackSent

Long

読取り専用

メンバー統計が最後にリセットされてから送信されたNACKパケットの総数

PacketDeliveryEfficiency

Float

読取り専用

パケット損失の検知および再送信の効率性です。効率性が低い場合は、不要なパケットの再送信が高い割合で発生していることを示します。

PacketsBundled

Long

読取り専用

送信前にバンドルされたパケットの総数。ネットワーク送信の総数は、PacketsSent - PacketsBundledです。

PacketsReceived

Long

読取り専用

メンバー統計が最後にリセットされてから受信されたパケットの数

PacketsRepeated

Long

読取り専用

メンバー統計が最後にリセットされてから受信された重複パケットの数

PacketsResent

Long

読取り専用

メンバー統計が最後にリセットされてから再送信されたパケットの数。タイムアウト期間内にACKが受信されないと、パケットが再送信されます。

PacketsResentEarly

Long

読取り専用

再送信が早すぎたパケットの総数。パケットが受信されなかったことを示すNACKがあると、パケットは早すぎるタイミングで再送信されます。

PacketsResentExcess

Long

読取り専用

後で不要と判断されたパケット再送の合計数です

PacketsSent

Long

読取り専用

メンバー統計が最後にリセットされてから送信されたパケットの数

Priority

Integer

読取り専用

メンバーの優先度または重要性です。順位を決めるために使用します

ProcessName

String

読取り専用

この名前は、同じプロセス(JVM)内にあるメンバーと同じであり、別のプロセスにあるメンバーと異なる必要があります。明示的に表示されない場合、この名前は、通常はプロセス識別子(PID)を表すシステムRuntimeMXBeanのName属性として内部で計算されます。

ProductEdition

String

読取り専用

このメンバーを実行している製品エディションです。使用可能な値は、Standard Edition、Enterprise Edition、およびGrid Editionです。

PublisherPacketUtilization

Float

読取り専用

メンバー・ソケットが最後に再オープンされてからのこのクラスタ・メンバーのパブリッシャ・パケットの使用率です。この値は、送信されたバイト数の、すべてのパケットがフルである送信バイト数に対する比率です。使用率が低い場合は、効率的にネットワークを使用するために十分な大きさでデータが送信されていないことを示します。

PublisherSuccessRate

Float

読取り専用

メンバー統計が最後にリセットされてからのこのクラスタ・メンバーのパブリッシュ成功率です。パブリッシュ成功率とは、最初の試行で正常に送信されたパケット数の、送信パケット合計数に対する比率です。タイムアウト期限内にACKが受信されないときには失敗の回数が増分されます。失敗は、ネットワーク待機時間が長すぎるかパケット・ドロップ率が高すぎるために発生します。

QuorumStatus

String

読取り専用

クラスタ定足数の現在の状態です

RackName

String

読取り専用

メンバーが置かれているラックの名前です。この名前は、物理的に同じラック(またはフレームやケージ)に存在するメンバーでは同じであり、物理的に異なるラックに存在するメンバーでは異なっている必要があります

ReceiverPacketUtilization

Float

読取り専用

ソケットが最後に再オープンされてからのこのクラスタ・メンバーの受信者パケットの使用率です。この値は、受信したバイト数の、すべてのパケットがフルであった場合に受信されたであろうバイト数に対する比率です。使用率が低い場合は、効率的にネットワークを使用するために十分な大きさでデータが送信されていないことを示します。

ReceiverSuccessRate

Float

読取り専用

メンバー統計が最後にリセットされてからのこのクラスタ・メンバーの受信成功率です。受信成功率とは、最初の試行で正常に送信されたパケット数の、受信パケット合計数に対する比率です。それまで受信したパケットの再配信が検出されるたびに失敗の回数が増分されます。インバウンド・ネットワークの待機時間が非常に長かったり、ACKパケットの損失が発生すると、成功率が低くなります。

RefreshTime

Date

読取り専用

このモデルが、対応するメンバーから前回取得されたときのタイムスタンプ。ローカル・サーバーの場合は、ローカル時間になります。

ResendDelay

Integer

読取り/書込み

パケットが確認されていない場合、パケットが受信者に再送信されるまでパブリッシャの再送信キューに待機している最小時間(ミリ秒)です。この値の設定が低すぎると、不要な繰返しのためにネットワークがオーバーフローする可能性があります。この値の設定が高すぎると、破棄されたパケットの再送信が遅延して全体の待機時間が長くなります。この値を変更するときにはSendAckDelay値の変更も必要な場合があります。

RoleName

String

読取り専用

アプリケーションに対するクラスタ・メンバーのロールを示す名前です。アプリケーションにとって意味のある名前を使用します。

SendAckDelay

Integer

読取り/書込み

ACKパケットをキューに入れてから送信するまでの最小時間(ミリ秒)です。この値はResendDelay値の半分以下にする必要があります。

SendQueueSize

Integer

読取り専用

現在、配信がスケジュールされているパケットの数です。この数には、すぐに送信されるパケットと、送信されて確認待ちであるパケットの両方が含まれます。ResendDelay間隔内に確認を受信しなかったパケットは自動的に再送信されます。

SiteName

String

読取り専用

メンバーが存在するサイトの名前です。この名前は、物理的に同じ場所(データ・センターなど)に存在するメンバーでは同じであり、物理的に異なる場所に存在するメンバーでは異なっている必要があります

SocketCount

Integer

読取り専用

このメンバーが実行されているコンピュータのCPUソケットの数です

Statistics

String

読取り専用

このクラスタ・メンバーの統計(人が読める形式で示されます)

TcpRingFailures

Long

読取り専用

メンバー統計が最後にリセットされてからリカバリされたTcpRingの接続切断の数です。リカバリ可能な接続切断は、異常を示すイベントです。このイベントは、TcpRingピアがTCP接続をドロップしたが、設定されている最大試行回数の後にリカバリされると登録されます。-1の値は、TcpRingが無効であることを示します。

Timestamp

Date

読取り専用

このメンバーがクラスタに参加したときの日時値(クラスタ時間)です

TrafficJamCount

Integer

読取り/書込み

パブリッシャにクライアント・スレッドを強制的に一時休止させる送信および再送信キュー内の最大合計パケット数です。値0は制限がないことを示します。

TrafficJamDelay

Integer

読取り/書込み

トラフィック混雑条件に達したときにクライアント・スレッドを一時休止する時間(ミリ秒)です。1未満(たとえばゼロ)は、1ミリ秒として処理されます。

UnicastAddress

String

読取り専用

このメンバーがポイントツーポイント通信のために使用するデータグラム・ソケットIPアドレスです

UnicastPort

Integer

読取り専用

このメンバーがポイントツーポイント通信のために使用するデータグラム・ソケット・ポートです

WeakestChannel

Integer

読取り専用

クラスタ・メンバーのIDです。これは通信が最も困難なメンバーです。見つからない場合は-1です。ポイントツーポイント・パブリッシャか受信者成功率が1.0以下の場合、チャンネルは脆弱であると判断されます。

WellKnownAddresses

String[]

読取り専用

このメンバーがクラスタへの参加に使用するよく知られているソケット・アドレスの配列

操作

表A-6は、ClusterNodeMBeanの操作を示しています。

表A-6 ClusterNodeMBeanの操作

操作

パラメータ

戻り値の型

説明

ensureService

String sCacheName

void

指定されたキャッシュのキャッシュ・サービスが、このMBeanが表すクラスタ・メンバーで実行されていることを確認します。このメソッドは、構成可能なキャッシュ・ファクトリを使用して、必要に応じて開始するキャッシュ・サービスを見つけます。

resetStatistics

適用なし

void

クラスタ・メンバーの統計をリセットします

logNodeSate

適用なし

Void

このクラスタ・メンバーのサービスにおけるスレッドのフル・ダンプおよび未処理のポーリングをログ出力します

shutdown

適用なし

void

このメンバーで実行されているすべてのクラスタ・サービスを停止します(制御されたシャットダウン)。このメンバーの管理は、メンバーを手動でまたはプログラム的に再起動するまで実行できません。

ConnectionManagerMBean

ConnectionManagerMBean MBeanはOracle Coherence*Extendプロキシを表します。1つのクラスタ・メンバーには、構成されているプロキシの数に応じて、この管理対象Beanのゼロ個以上のインスタンスが含まれます。このMBeanには、プロキシ・ホストのスループットおよび接続情報に関する統計が含まれます。

MBeanのオブジェクト名は次のようになります。

type=ConnectionManager,name=service name,nodeId=cluster node id

属性

表A-7は、ConnectionManagerMBeanの属性を示しています。

表A-7 ConnectionManagerMBeanの属性

属性

型

アクセス

説明

ConnectionCount

Integer

読取り専用

クライアント接続の数

HostIP

String

読取り専用

プロキシ・ホストのIPアドレスおよびポート

IncomingBufferPoolCapacity

Long

読取り専用

受信バッファのプール容量(バイト単位)

IncomingBufferPoolSize

Integer

読取り専用

受信プールにおけるバッファの数

OutgoingBufferPoolCapacity

Long

読取り専用

送信バッファのプール容量(バイト単位)

OutgoingBufferPoolSize

Integer

読取り専用

送信プールにおけるバッファの数

OutgoingByteBacklog

Long

読取り専用

送信キューのバックログ(バイト単位)

OutgoingMessageBacklog

Long

読取り専用

送信メッセージ・キューのバックログ

RefreshTime

Date

読取り専用

このモデルが、対応するメンバーから前回取得されたときのタイムスタンプ。ローカル・サーバーの場合は、ローカル時間になります。

TotalBytesReceived

Long

読取り専用

統計が最後にリセットされてからプロキシ・ホストにより受信されたバイトの総数

TotalBytesSent

Long

読取り専用

統計が最後にリセットされてからプロキシ・ホストにより送信されたバイトの総数

TotalMessagesReceived

Long

読取り専用

統計が最後にリセットされてからプロキシ・ホストにより受信されたメッセージの総数

TotalMessagesSent

Long

読取り専用

統計が最後にリセットされてからプロキシ・ホストにより送信されたメッセージの総数

UnauthorizedConnectionAttempts

Long

読取り専用

権限のないホストからの接続試行回数です。この機能は、パッチ・リリースの一部として追加されています。パッチに含まれるアップデートの詳細は、『Oracle Coherenceリリース・ノート』を参照してください。

操作

ConnectionManagerMBean MBeanには操作はありません。

ConnectionMBean

ConnectionMBean MBeanは、Oracle Coherence*Extendを介したクライアントのリモート接続を表します。1つのクラスタ・メンバーには、クラスタに対してアクティブなリモート接続の数に応じて、この管理対象Beanのゼロ個以上のインスタンスが含まれます。このMBeanには、接続のパフォーマンスおよび使用に関する統計が含まれます。

MBeanのオブジェクト名は次のようになります。

type=Connection,name=service name ,nodeId=cluster node id,UUID=connection id

属性

表A-8は、ConnectionMBeanの属性を示しています。

表A-8 ConnectionMBeanの属性

属性

型

アクセス

説明

ConnectionTimeMillis

Long

読取り専用

クライアントが接続されていた継続時間(ミリ秒)

Member

String

読取り専用

クライアントのメンバー識別情報。この値は、クライアントのオペレーション・オーバーライド・ファイルの<member-identity要素を使用してカスタマイズできます。メンバーの識別情報を設定する方法の詳細は、『Oracle Coherenceでのアプリケーションの開発』を参照してください。

OutgoingByteBacklog

Long

読取り専用

送信キューのバックログ(バイト単位)

OutgoingMessageBacklog

Integer

読取り専用

送信メッセージ・キューのバックログ

RefreshTime

Date

読取り専用

このモデルが、対応するメンバーから前回取得されたときのタイムスタンプ。ローカル・サーバーの場合は、ローカル時間になります。

RemoteAddress

String

読取り専用

対応するクライアントのIPアドレス

RemotePort

Integer

読取り専用

対応するクライアントのポート

Timestamp

Date

読取り専用

対応するクライアントがプロキシに接続したときの日時値(ローカル時間)

TotalBytesReceived

Long

読取り専用

統計が最後にリセットされてから受信されたバイトの総数

TotalBytesSent

Long

読取り専用

統計が最後にリセットされてから送信されたバイトの総数

TotalMessagesReceived

Long

読取り専用

統計が最後にリセットされてから受信されたメッセージの総数

TotalMessagesSent

Long

読取り専用

統計が最後にリセットされてから送信されたメッセージの総数

UUID

String

読取り専用

この接続の一意の識別子

操作

表A-9は、ConnectionMBeanの操作を示しています。

表A-9 ConnectionMBeanの操作

操作

パラメータ

戻り値の型

説明

closeConnection

適用なし

void

対応する接続を閉じます。

resetStatistics

適用なし

void

接続の統計をリセットします。

FlashJournalRM

JournalMBean MBeanは、フラッシュ・ジャーナル・リソース・マネージャ(FlashJournalRM)用のインタフェースを提供します。リソース・マネージャは、データをフラッシュ・メモリーに格納します。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。管理対象Beanは、操作の統計を提供します。

MBeanのオブジェクト名は次のようになります。

type=Journal,name=FlashJournalRM,nodeId=cluster node id

属性

表A-10は、フラッシュ・ジャーナル・リソース・マネージャに関連するJournalMBeanの属性を示します。

表A-10 FlashJournalRMのJournalMBean属性

属性

型

アクセス

説明

BacklogCount

Integer

読取り専用

まだジャーナルに格納されていない、シリアライズされた値の数

BacklogSize

Integer

読取り専用

ディスクへの書込みのキューに入れられたが、まだディスクに書き込まれていないジャーナルのデータ量。バックログで使用するメモリーの最大容量は、指定されている容量の2倍以上にする必要があります。これは、キューに入れられているデータがバイナリ形式であり、ライトビハインド・バッファにレンダリングされるためです。

BinaryStoreCount

Integer

読取り専用

このジャーナルを使用しているアクティブなJournalBinaryStoreオブジェクトの数

BufferSize

Integer

読取り専用

ジャーナル・ファイルへのデータの書込みに使用されるバッファのサイズ

CollectorLoadFactor

Double

読取り専用

このしきい値を超えると、ファイルがガベージ・コレクションの対象となります。この値が大きいほど、より積極的にファイルが収集されます。

CurrentCollectorLoadFactor

Double

読取り専用

ファイルのガベージ・コレクションが開始される、現在の負荷率しきい値

FileCount

Integer

読取り専用

現在使用中のジャーナル・ファイルの数

HighFileCount

Integer

読取り専用

このファイル数を超えると、ジャーナルで強制的な圧縮(ガベージ・コレクション)が実行されます

HighestLoadFactor

Double

読取り専用

使用可能なジャーナル容量のおおよその高水位標です

MaxBacklogSize

Integer

読取り専用

バックログのバイト単位の最大サイズ。バックログがこのレベルを超えると書込みが遅延され、このレベルを下回るまで遅延されたままになります。

MaxFileSize

Long

読取り専用

個々のジャーナル・ファイルで使用可能な最大許容サイズ

MaxJournalFilesNumber

Integer

読取り専用

使用可能なジャーナル・ファイルの最大数

MaxPoolSize

Integer

読取り専用

バッファ・プールのバイト単位の最大サイズ

MaxTotalRam

Long

読取り専用

この属性はフラッシュ・ジャーナルとは関係なく、-1を返します。

MaxValueSize

Integer

読取り専用

シリアライズされた値のバイト単位の最大許容サイズ

NioRam

Boolean

読取り専用

RAMジャーナルがヒープ内のバイト・バッファまたはヒープ外のNIOバッファ(NIO RAM)のどちらを使用するかを指定します。有効な値は、trueとfalseです。true値は、ヒープ外のNIOバッファを示します。false値は、ヒープ内のバイト・バッファを示します。デフォルト値はfalseです。

PoolSize

Integer

読取り専用

プール内の使用可能なバッファのバイト単位での合計サイズ

TotalCompactionCount

Integer

読取り専用

ジャーナルに対して圧縮(ガベージ・コレクション)が実行された合計回数

TotalDataSize

Long

読取り専用

このジャーナルに現在保存されているバイト単位のデータ量

TotalFileSize

Long

読取り専用

このジャーナルのすべてのジャーナル・ファイルの合計サイズ

操作

JournalMBean MBeanには操作がありません。

ManagementMBean

ManagementMBean MBeanはグリッドJMXインフラストラクチャを表します。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。このMBeanには管理設定が含まれます。一部の属性は書込み可能であり、管理動作がリアルタイムに変更されます。

MBeanのオブジェクト名は次のようになります。

type=Management

属性

表A-11は、ManagementMBeanの属性を示しています。

表A-11 ManagementMBeanの属性

属性

型

アクセス

説明

ExpiryDelay

Long

読取り/書込み

MBeanサーバーが、リフレッシュするまでリモート・モデルのスナップショットを維持する時間(ミリ秒数)

RefreshCount

Long

読取り専用

統計が最後にリセットされてから取得されたスナップショットの合計数

RefreshExcessCount

Long

読取り専用

MBeanサーバーによって情報が予測的にリフレッシュされ、その情報がアクセスされなかった回数

RefreshOnQuery

Boolean

読取り専用

問合せ時にリフレッシュするようMBeanサーバーを構成するかどうかを指定します。trueの場合、RefreshPolicyの値はrefresh-onqueryになります。

RefreshPolicy

String

読取り/書込み

リモート・モデルをリフレッシュする際の動作を決定するポリシー。有効な値は、refresh-ahead、refresh-behind、refresh-expired、およびrefresh-onqueryです。無効な値はrefresh-expiredに変換されます。

RefreshPredictionCount

Long

読取り専用

MBeanサーバーが予測(refresh-behind、refresh-ahead、refresh-onquery)アルゴリズムを使用してMBean情報をリフレッシュした回数

RefreshTime

Date

読取り専用

このモデルが、対応するメンバーから前回取得されたときのタイムスタンプ。ローカル・サーバーの場合は、ローカル時間になります。

RefreshTimeoutCount

Long

読取り専用

この管理メンバーがリモートMBean属性のリフレッシュ試行中にタイムアウトした回数

RemoteNotificationCount

Long

読取り専用

統計が最後にリセットされてからこのメンバーにより受信された、すべてのMBeanについてのリモート通知の総数

操作

ManagementMBean MBeanには、RefreshCount、RefreshExcessCount、およびRefreshPredictionCountの統計をリセットするresetStatistics操作が含まれます。

PointToPointMBean

PointToPointMBean MBeanは、2つのクラスタ・メンバー間のネットワーク・ステータスを表します。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。このMBeanは、現在の参照側メンバーからの、特定の被参照メンバーに関するネットワーク統計を提供します。メンバーを指定するには、ViewedMemberId属性を使用してそのIDを入力します。

MBeanのオブジェクト名は次のようになります。

type=PointToPoint,nodeId=cluster node id

属性

表A-12は、PointToPointMBeanの属性を示しています。

表A-12 PointToPointMBeanの属性

属性

型

アクセス

説明

DeferredPackets

Integer

読取り専用

参照側メンバーが現在送信を遅延している被参照メンバーに宛てられたパケット数。参照側メンバーは、未処理のパケット数がThreshold属性の値を下回るまでパケットの送信を遅延します。この属性の値が意味を持つのは、参照側メンバーがFlowControlを有効にしている場合だけです。『Oracle Coherenceでのアプリケーションの開発』の<flow-control要素を参照してください。

Deferring

Boolean

読取り専用

参照側メンバーが現在、被参照メンバーへのパケットを遅延しているかどうかを示します。この属性の値が意味を持つのは、参照側メンバーがFlowControlを有効にしている場合だけです。『Oracle Coherenceでのアプリケーションの開発』の<flow-control要素を参照してください。

LastIn

Long

読取り専用

参照側メンバーが、被参照メンバーから最後に確認を受信してから経過したミリ秒

LastOut

Long

読取り専用

参照側メンバーが、被参照メンバーに最後にパケットを送信してから経過したミリ秒

LastSlow

Long

読取り専用

参照側メンバーが、被参照メンバーの処理が遅いことを宣言してから経過したミリ秒。被参照メンバーが遅いと宣言されていない場合は-1です

OutstandingPackets

Integer

読取り専用

参照側メンバーが被参照メンバーに送信し、まだ確認されていないパケット数。この属性の値が意味を持つのは、参照側メンバーがFlowControlを有効にしている場合だけです。『Oracle Coherenceでのアプリケーションの開発』の<flow-control要素を参照してください。

PauseRate

Float

読取り専用

参照側メンバーが被参照メンバーをレスポンスなしと判断した最後の統計がリセットされてからの時間の割合。通常これは、0.0にきわめて近い値です。値が1.0に近い場合は、被参照メンバーがほぼ操作不可であることを示します。原因はおそらく、非常に長いガベージ・コレクションにあります。この属性の値が意味を持つのは、参照側メンバーがFlowControlを有効にしている場合だけです。『Oracle Coherenceでのアプリケーションの開発』の<flow-control要素を参照してください。

Paused

Boolean

読取り専用

参照側メンバーが現在、被参照メンバーをレスポンスなしと判断しているかどうかを示します。この属性の値が意味を持つのは、参照側メンバーがFlowControlを有効にしている場合だけです。『Oracle Coherenceでのアプリケーションの開発』の<flow-control要素を参照してください。

PublisherSuccessRate

Float

読取り専用

統計が最後にリセットされて以降の、参照側メンバーから被参照メンバーへのパブリッシュ成功率

ReceiverSuccessRate

Float

読取り専用

統計が最後にリセットされて以降の、参照側メンバーから被参照メンバードへの受信成功率

RefreshTime

Date

読取り専用

このモデルが、対応するメンバーから前回取得されたときのタイムスタンプ。ローカル・サーバーの場合は、ローカル時間になります

Threshold

Integer

読取り専用

参照側メンバーで遅延アルゴリズムの開始前に累積が可能な、被参照メンバーに対する未処理のパケットの最大数。この属性の値が意味を持つのは、参照側メンバーがFlowControlを有効にしている場合だけです。『Oracle Coherenceでのアプリケーションの開発』の<flow-control要素を参照してください。

ViewedMemberId

Integer

読取り/書込み

被参照メンバーのID

ViewerStatistics

String[]

読取り専用

参照側メンバーからの他のすべてのメンバーに対するポイントツーポイント統計の、人が読める形式のサマリー

操作

表A-13は、PointToPointMBeanの操作を示しています。

表A-13 PointToPointMBeanの操作

操作

パラメータ

戻り値の型

説明

resetStatistics

適用なし

void

参照側メンバーの、他のすべてのメンバーに対するポイントツーポイント統計をリセットします。

trackWeakest

適用なし

void

ポイントツーポイントMBeanに最も脆弱なメンバーを追跡するよう指示します。被参照メンバーは、対応するパブリッシャか受信者の成功率が1.0以下の場合は、脆弱であると判断されます。

RamJournalRM

JournalMBean MBeanは、RAMジャーナル・リソース・マネージャ(RamJournalRM)用のインタフェースを提供します。リソース・マネージャは、データのRAMメモリーへの格納を担当します。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。管理対象Beanは、操作の統計を提供します。

MBeanのオブジェクト名は次のようになります。

type=Journal,name=RamJournalRM,nodeId=cluster node id

属性

表A-14は、RAMジャーナル・リソース・マネージャに関連するJournalMBeanの属性を示します。

表A-14 RamJournalRMのJournalMBean属性

属性

型

アクセス

説明

BacklogCount

Integer

読取り専用

この属性はRAMジャーナルとは関係なく、-1を返します。

BacklogSize

Integer

読取り専用

この属性はRAMジャーナルとは関係なく、-1を返します。

BinaryStoreCount

Integer

読取り専用

このジャーナルを使用しているアクティブなJournalBinaryStoreオブジェクトの数

BufferSize

Integer

読取り専用

この属性はRAMジャーナルとは関係なく、-1を返します。

CollectorLoadFactor

Double

読取り専用

このしきい値を超えると、ファイルがガベージ・コレクションの対象となります。この値が大きいほど、より積極的にファイルが収集されます。

CurrentCollectorLoadFactor

Double

読取り専用

ファイルのガベージ・コレクションが開始される、現在の負荷率しきい値

FileCount

Integer

読取り専用

現在使用中のジャーナル・ファイルの数

HighFileCount

Integer

読取り専用

この属性はRAMジャーナルとは関係なく、-1を返します。

HighestLoadFactor

Double

読取り専用

この属性はRAMジャーナルとは関係なく、0.0を返します。

MaxBacklogSize

Integer

読取り専用

この属性はRAMジャーナルとは関係なく、-1を返します。

MaxFileSize

Long

読取り専用

個々のジャーナル・ファイルで使用可能な最大許容サイズ

MaxJournalFilesNumber

Integer

読取り専用

使用可能なジャーナル・ファイルの最大数

MaxPoolSize

Integer

読取り専用

バッファ・プールのバイト単位の最大サイズ

MaxTotalRam

Long

読取り専用

このジャーナルで使用されるRAMの合計量

MaxValueSize

Integer

読取り専用

シリアライズされた値のバイト単位の最大許容サイズ

NioRam

Boolean

読取り専用

RAMジャーナルがヒープ内のバイト・バッファまたはヒープ外のNIOバッファ(NIO RAM)のどちらを使用するかを指定します。有効な値は、trueとfalseです。true値は、ヒープ外のNIOバッファを示します。false値は、ヒープ内のバイト・バッファを示します。デフォルト値はfalseです。

PoolSize

Integer

読取り専用

この属性はRAMジャーナルとは関係なく、-1を返します。

TotalCompactionCount

Integer

読取り専用

ジャーナルに対して圧縮(ガベージ・コレクション)が実行された合計回数

TotalDataSize

Long

読取り専用

このジャーナルに現在保存されているバイト単位のデータ量

TotalFileSize

Long

読取り専用

このジャーナルのすべてのジャーナル・ファイルの合計サイズ

操作

JournalMBean MBeanには操作がありません。

ReporterMBean

ReporterMBean MBeanはOracle Coherence Reporterを表します。各クラスタ・メンバーには、この管理対象Beanの単一のインスタンスが含まれます。MBeanには、Oracle Coherenceのレポート機能用の設定および統計が含まれます。多くの属性は書込み可能であり、レポート動作がリアルタイムに変更されます。さらにこのMBeanには、レポート機能を起動および停止したり、レポートをリアルタイムに実行する操作が含まれています。

MBeanのオブジェクト名は次のようになります。

type=Reporter

属性

表A-15は、ReporterMBeanの属性を示しています。

表A-15 ReporterMBeanの属性

属性

型

アクセス

説明

AutoStart

Boolean

読取り専用

メンバーでレポート機能を自動的に起動するかどうかを指定します

ConfigFile

String

読取り/書込み

レポート機能用に使用するレポート・グループ構成ファイル

CurrentBatch

Long

読取り/書込み

レポータのバッチID

IntervalSeconds

Long

読取り/書込み

実行間の秒単位の間隔

LastExectionTime

Date

読取り専用

レポート・バッチが最後に実行された時間。ローカル・サーバーの場合は、ローカル時間になります。

LastReport

String

読取り専用

実行する最後のレポート

OutputPath

String

読取り/書込み

レポート出力を配置するパス

RefreshTime

Date

読取り専用

レポータ統計が最後にリセットされた時間。ローカル・サーバーの場合は、ローカル時間になります。

Reports

String[]

読取り専用

作成されたレポートのリスト

RunAverageMillis

Double

読取り専用

統計が最後にリセットされてからのバッチ実行の平均時間(ミリ秒)

RunLastMillis

Long

読取り専用

統計が最後にリセットされてからの最後のバッチ実行の時間(ミリ秒)

RunMaxMillis

Long

読取り専用

統計が最後にリセットされてからのバッチ実行の最大時間(ミリ秒)

State

String

読取り専用

レポート状態。有効な値は、Running(レポートを作成中)、Waiting(レポータは完了までの間隔を待機中)、Starting(レポータ起動中)、Stopping(レポータは停止を試行し、実行しているレポートの完了を待機中)、Stopped(レポータ停止中)、およびSleeping(レポータ休止中)です。

操作

表A-16は、ReporterMBeanの操作を示しています。

表A-16 ReporterMBeanの操作

操作

パラメータ

戻り値の型

説明

resetStatistics

適用なし

void

レポータの統計をリセットします。

runReport

String sReportFile

void

指定されたレポート・グループまたはレポート・ファイルをそれぞれ使用して(たとえば、reports/report-group.xmlまたはreports/report-cache-size.xml)、レポート・グループまたは単一レポートを1回かぎり実行します。

start

適用なし

void

レポート機能を開始します

stop

適用なし

void

レポート機能を停止します

ServiceMBean

ServiceMBean MBeanはクラスタ・サービスを表します。1つのクラスタ・メンバーには、開始されているクラスタ・サービスの数に応じて、この管理対象Beanのゼロ個以上のインスタンスが含まれます。このMBeanには、サービスの使用およびパフォーマンスに関する統計が含まれます。一部の属性は書込み可能であり、サービスの動作がリアルタイムに変更されます。さらにこのMBeanには、リアルタイムにサービスを開始および停止するための操作が含まれています。

MBeanのオブジェクト名は次のようになります。

type=Service,name=service name,nodeId=cluster node id

用語

タスクおよびリクエストという用語にはOracle Coherence独自の定義があります。ServiceMBeanのタスク関連およびリクエスト関連の属性を設定する前に、これらの用語について理解しておいてください。

- タスク: 1つまたは複数のメンバーで呼び出され実行されるオブジェクト。オブジェクトには、フィルタ、起動エージェント(エントリ・プロセッサおよびアグリゲータ)、単一パス・エージェント(Invocableオブジェクト)などがあります。

- リクエスト: タスクを完了するために必要なラウンドトリップ。リクエストは、実行対象のタスクがクライアントによって送信された時点から始まり、次の時間を含みます。

- 実行側のメンバー(サーバー)にリクエストを配信するための所要時間

- タスクが受信されてサービス・キューに入れられてから実行が開始されるまでの間隔

- タスクの実行時間

- クライアントに結果を返信するための所要時間

属性

表A-17は、ServiceMBeanの属性を示しています。

表A-17 ServiceMBeanの属性

属性

型

アクセス

説明

BackupCount

Integer

読取り専用

すべてのキャッシュ記憶域に対するバックアップ数

BackupCountAfterWritebehind

Integer

読取り専用

ライトビハインドを必要としない、バックアップ・データを保持するパーティション(分散)キャッシュ・サービスのメンバー数。データは、クラスタ全体がシャットダウンしても容易には失われません。

EventInterceptorInfo

String[]

読取り専用

イベント・インターセプタによって処理されたライブ・イベントの統計配列。統計には、次のものがあります。

- Interceptors: 登録されているインターセプタのリスト

- ExceptionCount: 統計が最後にリセットされてからインターセプタからスローされた例外の数

- LastException: インターセプタからスローされた最後の例外のスタック・トレース

JoinTime

Date

読取り専用

このメンバーがサービスに参加したときの日時(クラスタ時間)

OwnedPartitionsBackup

Integer

読取り専用

このメンバーがバックアップ記憶域にバックアップしたパーティション数

OwnedPartitionsPrimary

Integer

読取り専用

このメンバーがプライマリ記憶域に所有しているパーティション数

PartitionsAll

Integer

読取り専用

すべてのキャッシュの記憶域を分けるパーティションの総数

PartitionsEndangered

Integer

読取り専用

現在バックアップされていないパーティションの総数

PartitionsUnbalanced

Integer

読取り専用

記憶域が有効なサービス・メンバーに対するパーティション分配が完全に調整されるまで転送が予定されているプライマリ・パーティションおよびバックアップ・パーティションの総数

PartitionsVulnerable

Integer

読取り専用

プライマリ・パーティションの所有者が存在する同じコンピュータでバックアップされるパーティションの総数

QuorumStatus

String

読取り専用

サービス定足数の現在の状態

RefreshTime

Date

読取り専用

このモデルが、対応するメンバーから前回取得されたときのタイムスタンプ。ローカル・サーバーの場合は、ローカル時間になります。

RequestAverageDuration

Float

読取り専用

統計が最後にリセットされてから、サービスにより発行された個々のリクエストの平均継続時間(ミリ秒)

RequestMaxDuration

Long

読取り専用

統計が最後にリセットされてから、サービスにより発行されたリクエストの最大継続時間(ミリ秒)

RequestPendingCount

Long

読取り専用

サービスにより発行された保留中のリクエスト件数

RequestPendingDuration

Long

読取り専用

サービスにより発行された最古の保留中のリクエストの継続時間(ミリ秒)

RequestTimeoutCount

Long

読取り専用

統計が最後にリセットされてからタイムアウトしたリクエストの総数

RequestTimeoutMillis

Long

読取り/書込み

タイムアウトできる(com.tangosol.net.PriorityTaskインタフェースを実装する)リクエストのデフォルトのタイムアウト値(ミリ秒)ですが、リクエスト実行のタイムアウト値は明示的に指定できません

RequestTotalCount

Long

読取り専用

統計が最後にリセットされてから、サービスにより発行された同期リクエストの総数

Running

Boolean

読取り専用

サービスが実行されているかどうかを指定します

SeniorMemberId

Integer

読取り専用

シニア・サービスのメンバーID。サービスが実行されていない場合、この値は-1です。

Statistics

String

読取り専用

このサービスの、人が読める形式の統計

StatusHA

String

読取り専用

このサービスの高可用性ステータス。値がMACHINE-SAFEの場合は、任意のコンピュータで稼働しているクラスタ・メンバーのすべてがデータを失わずに停止可能であることを示します。値がNODE-SAFEの場合は、クラスタ・メンバーがデータを失わずに停止可能であることを示します。値がENDANGEREDの場合は、このサービスを実行しているいずれかのクラスタ・メンバーの異常終了によってデータが失われる可能性があることを示します。N/Aの値は、サービスに高可用性の影響がないことを示します。

StorageEnabled

Boolean

読取り専用

ローカルの記憶域がこのクラスタ・メンバーに対して有効かどうかを指定します

StorageEnabledCount

Integer

読取り専用

このサービスを実行しており、ローカルの記憶域を有効にする、クラスタ・メンバーの総数を指定します

TaskAverageDuration

Float

読取り専用

個別のタスク実行の平均継続時間(ミリ秒)

TaskBacklog

Integer

読取り専用

サービス・スレッドにより実行するようスケジュールされたタスクを保持するバックログ・キューのサイズ

TaskCount

Long

読取り専用

統計が最後にリセットされてから実行されたタスクの総数

TaskHungCount

Integer

読取り専用

現在実行中のハング・タスクの総数

TaskHungDuration

Long

読取り専用

現在実行中のハング・タスクの最長継続時間(ミリ秒)

TaskHungTaskId

String

読取り専用

現在最も長く実行されているハング・タスクのID

TaskHungThresholdMillis

Long

読取り/書込み

タスクがハングしたとみなされるまでそのタスクを実行できる時間(ミリ秒)。ポストされたタスクがまだ開始されていない場合は、ハングと見なされません。

この属性は、スレッド・プールが開始されている(つまり、ThreadCountの値が>0の)場合にのみ適用されます。

TaskMaxBacklog

Integer

読取り専用

統計が最後にリセットされてからの、バックログ・キューの最大サイズ

TaskTimeoutCount

Integer

読取り専用

統計が最後にリセットされてからの、タイムアウトしたタスクの総数

TaskTimeoutMillis

Long

読取り/書込み

タイムアウトできる(com.tangosol.net.PriorityTaskインタフェースを実装する)タスクのデフォルトのタイムアウト値(ミリ秒)ですが、タスク実行のタイムアウト値は明示的に指定できません。

この属性は、スレッド・プールが開始されている(つまり、ThreadCountの値が>0の)場合にのみ適用されます。

ThreadAbandonedCount

Integer

読取り専用

サービスのスレッド・プールから中止されたスレッド数。スレッドが実行タイムアウトより長い時間タスクを実行し、タスクを中断する試行がすべて失敗する場合、スレッドは中止され、新しいスレッドに置換されます。

ThreadAverageActiveCount

Float

読取り専用

統計が最後にリセットされてからサービスのスレッド・プール内にあるアクティブな(アイドル状態でない)スレッドの平均数

ThreadCount

Integer

読取り/書込み

サービスのスレッド・プール内にあるスレッドの数。この属性は、スレッド・プールを使用するようにサービスが構成されている(つまり、スレッド・カウントが>0の)場合にのみリアルタイムに変更されます。この値を初期設定するには、サービスのthread-countをオペレーション・オーバーライド・ファイルまたはキャッシュ構成ファイルのいずれかに構成します。この値が0(デフォルト)の場合はサービス・スレッドのみが使用され、スレッド・プールは開始されません。

注意: プロキシ・サービスの場合、スレッド・カウント値を設定すると、動的なスレッド・プールのサイズ変更が無効になります。動的なスレッド・プールでは、プロキシ・サービスの負荷に応じてスレッド数が自動的に調整されます。

ThreadCountMax

Integer

読取り/書込み

動的なスレッド・プールのサイズ変更が有効な場合にプロキシ・サービスで許可されている最大スレッド数。値が-1の場合は、動的なスレッド・プールのサイズ変更が無効であることを示します。

ThreadCountMin

Integer

読取り/書込み

動的なスレッド・プールのサイズ変更が有効な場合にプロキシ・サービスで許可されている最小スレッド数。値が-1の場合は、動的なスレッド・プールのサイズ変更が無効であることを示します。

ThreadIdleCount

Integer

読取り専用

サービスのスレッド・プール内で現在アイドル状態のスレッド数

ThreadPoolSizingEnabled

Boolean

読取り専用

このサービスで動的スレッド・プールのサイズ変更が有効化されるかどうかを指定します。動的スレッド・プールがサポートされているのはプロキシ・サービスのみです。動的スレッド・プールを有効化するには、thread-count属性に値を指定しないでください。

TransportAddress

String

読取り専用

サービス専用のトランスポート・アドレス。アドレスが表示されている場合(このサービスに高信頼トランスポートが有効化されていることを示す)、サービス・インスタンスとその他のサービス・メンバーとの通信は、共有クラスタ・トランスポートではなく、専用のトランスポート・アドレスを使用して行われます。

TransportBackloggedConnectionList

String[]

読取り専用

サービスの専用トランスポートにおけるバックログされた接続のリスト

TransportBackloggedConnections

Integer

読取り専用

サービスの専用トランスポートにおけるバックログされた接続の数。接続が必要とされるすべての新規リクエストは、バックログが処理されるまでブロックされます。

TransportConnections

Integer

読取り専用

サービスの専用トランスポートにおける保守された接続の数。一部のメンバーで専用トランスポートの使用が構成されていない場合、または特定のメンバーとの通信に専用トランスポートを使用するメリットがないと判断された場合、この数はメンバー数よりも少なくなります。

TransportReceivedBytes

Long

読取り専用

統計が最後にリセットされてからサービスの専用トランスポートで受信されたバイト数

TransportReceivedMessages

Long

読取り専用

統計が最後にリセットされてからサービスの専用トランスポートで受信されたメッセージ数

TransportRetainedBytes

Long

読取り専用

サービスの専用トランスポートによって保持されており、配信確認を待っているバイト数。このメモリーは、Javaガベージ・コレクション用のヒープ領域以外の領域に割り当てられます。

TransportSentBytes

Long

読取り専用

統計が最後にリセットされてからサービスの専用トランスポートで送信されたバイト数

TransportSentMessages

Long

読取り専用

統計が最後にリセットされてからサービスの専用トランスポートで送信されたメッセージ数

Type

String

読取り専用

サービスのタイプ識別子

操作

表A-18は、ServiceMBeanの操作を示しています。

表A-18 ServiceMBeanの操作

操作

パラメータ

戻り値の型

説明

reportOwnership

fVerbose

String

このノードのサービスが所有するパーティションを報告します。fVerboseパラメータは、所有権サマリーをフォーマットします。有効な値は、trueまたはfalseです。このパラメータをtrueに設定すると、詳細な所有権カタログが含められます。

resetStatistics

適用なし

void

サービスの統計をリセットします

shutdown

適用なし

void

サービスを停止します。これは制御されたシャットダウンであり、stop操作よりもお薦めします。

start

適用なし

void

サービスを開始します

stop

適用なし

void

サービスを強制的に停止します。通常のサービスの停止にはshutdown操作を使用します。

StorageManagerMBean

StorageManagerMBean MBeanは、記憶域が有効な分散キャッシュ・サービスの記憶域インスタンスを表します。記憶域インスタンスは、ローカル・メンバーによって管理されている部分の、分散キャッシュのすべての索引、リスナーおよびロック情報を管理します。1つのクラスタ・メンバーには、構成されている分散キャッシュの数に応じて、この管理対象Beanのゼロ個以上のインスタンスが含まれます。このMBeanには、記憶域が有効なキャッシュの使用統計および問合せの統計が含まれます。

MBeanのオブジェクト名は次のようになります。

type=StorageManager,service=service name,cache=cache name,nodeId=cluster node id

属性

表A-19は、StorageManagerMBeanの属性を示しています。

表A-19 StorageManagerMBeanの属性

属性

型

アクセス

説明

EventInterceptorInfo

String[]

読取り専用

イベント・インターセプタによって処理されたライブ・イベントの統計配列。統計には、次のものがあります。

- Interceptors: 登録されているインターセプタのリスト

- ExceptionCount: 統計が最後にリセットされてからインターセプタからスローされた例外の数

- LastException: インターセプタからスローされた最後の例外のスタック・トレース

EventsDispatched

Long

読取り専用

統計が最後にリセットされてからストレージ・マネージャによりディスパッチされたイベントの総数

EvictionCount

Long

読取り専用

エントリの失効または基礎となるバッキング・マップが設定されたサイズ制限に到達するような挿入操作のために、このストレージ・マネージャにより管理されるバッキング・マップから削除された件数です。削除件数は、静的なシステムにおけるキャッシュ・サイズの監査に使用されます。

Cache Size = Insert Count - Remove Count - Eviction Count

そのため、この削除件数は、統計をリセットするメソッドによってリセットされません。

IndexInfo

String[]

読取り専用

ストレージ・マネージャにより管理されるパーティション化されたキャッシュ部分に適用される、各索引情報の配列。各要素はValueExtractor記述子、順序付けフラグ(このフラグがtrueの場合、索引の内容が順番に並んでいることを示します。falseの場合、索引の内容は順番に並んでいません)およびカーディナリティ(索引が付けられている一意の値の数)が含まれている文字列値です。

InsertCount

Long

読取り専用

バッキング・マップへの挿入数。put操作およびinvoke操作による標準的な挿入やバッキング・マップ・トポロジの一覧を使用したget操作による統合的な挿入のみではなく、転送の配信をリソースを基礎となるバッキング・マップに入れた場合にこのカウンタに1が足され、転送の配信でデータを出した場合にこのカウンタから1が引かれます。

挿入件数は、静的なシステムにおけるキャッシュ・サイズの監査に使用されます。

Cache Size = Insert Count - Remove Count - Eviction Count

そのため、この挿入件数は、統計をリセットするメソッドによってリセットされません。

ListenerFilterCount

Integer

読取り専用

ストレージ・マネージャに現在登録されているフィルタベースのリスナーの数

ListenerKeyCount

Integer

読取り専用

ストレージ・マネージャに現在登録されているキーベースのリスナーの数

ListenerRegistrations

Long

読取り専用

統計が最後にリセットされてからストレージ・マネージャにより処理されたリスナー登録リクエストの総数

LocksGranted

Integer

読取り専用

ストレージ・マネージャにより管理されるパーティション化キャッシュの一部に現在付与されているロックの数。

LocksPending

Integer

読取り専用

ストレージ・マネージャにより管理されるパーティション化キャッシュの一部に対する保留中のロック・リクエストの数

MaxQueryDescription

String

読取り専用

統計が最後にリセットされてからMaxQueryThresholdMillis属性を超えた、最長継続時間の問合せの説明

MaxQueryDurationMillis

Long

読取り専用

統計が最後にリセットされてから最も長く実行されている問合せの時間(ミリ秒)

MaxQueryThresholdMillis

Long

読取り/書込み

記録している問合せのしきい値(ミリ秒)。このしきい値よりも長時間実行されている最長の問合せは、MaxQueryDescription属性により報告されます。デフォルト値は30ミリ秒です。

NonOptimizedQueryAverageMillis

Long

読取り専用

キャッシュ統計が最後にリセットされてからの、最適化されていない問合せの平均実行時間(ミリ秒)

NonOptimizedQueryCount

Long

読取り専用

統計が最後にリセットされてから、索引を使用しても解決できなかった(または部分的にしか解決できなかった)パラレル問合せの総数

NonOptimizedQueryTotalMillis

Long

読取り専用

統計が最後にリセットされてから、索引を使用しても解決できなかった(または部分的にしか解決できなかった)問合せの合計実行時間(ミリ秒)。

OptimizedQueryAverageMillis

Long

読取り専用

統計が最後にリセットされてからの最適化された問合せの平均実行時間(ミリ秒)

OptimizedQueryCount

Long

読取り専用

統計が最後にリセットされてから索引を使用して完全に解決された問合せの総数

OptimizedQueryTotalMillis

Long

読取り専用

統計が最後にリセットされてから索引を使用して完全に解決された問合せの合計実行時間(ミリ秒)

RefreshTime

Date

読取り専用

このモデルが、対応するメンバーから前回取得されたときのタイムスタンプ。ローカル・サーバーの場合は、ローカル時間になります。

RemoveCount

Long

読取り専用

clear、removeまたはinvokeなどの操作により、ストレージ・マネージャが管理するバッキング・マップから削除された数です。

削除件数は、静的なシステムにおけるキャッシュ・サイズの監査に使用されます。

Cache Size = Insert Count - Remove Count - Eviction Count

そのため、この削除件数は、統計をリセットするメソッドによってリセットされません。

TriggerInfo

String[]

読取り専用

ストレージ・マネージャにより管理されるパーティション化されたキャッシュ部分に適用される、各トリガー情報の配列。各要素は、人が読める形式で示された、対応するMapTrigger実装の説明を表す文字列値です。

操作

StorageManagerMBean MBeanには、ストレージ・マネージャ統計をリセットするresetStatistics操作が含まれています。この操作では、EvictionCount、InsertCount、またはRemoveCountの属性はリセットされません。

TransactionManagerMBean

TransactionManagerMBean MBeanはトランザクション・マネージャを表し、トランザクション・フレームワーク専用です。1つのクラスタ・メンバーには、構成されているトランザクション・キャッシュの数に応じて、この管理対象Beanのゼロ個以上のインスタンスが含まれます。このMBeanでは、すべてのトランザクション・サービス・インスタンスからのサービスレベルの統計を集計したグローバル・トランザクション・マネージャの統計が提供されます。各クラスタ・メンバーには、サービスごとにトランザクション・マネージャMBeanのインスタンスが1つあります。

MBeanのオブジェクト名は次のようになります。

type=TransactionManager,service=service name,nodeId=cluster node id

注意:

特定のトランザクション・マネージャの属性については、複数のメンバーがトランザクションに参加する場合でも、トランザクションのコーディネータ・メンバーでこの数は保持されます。たとえば、トランザクションには複数のメンバーに格納されているエントリに対する変更が追加されている場合がありますが、TotalCommitted属性はそのトランザクションのコミットを調整したメンバー上でのみMBeanで増分されます。

属性

表A-20は、TransactionManagerMBeanの属性を示しています。

表A-20 TransactionManagerMBeanの属性

属性

型

アクセス

説明

CommitTotalMillis

Long

読取り専用

統計が最後にリセットされてからコミット・フェーズで使用された累積時間(ミリ秒)

RefreshTime

Date

読取り専用

このモデルが、対応するメンバーから前回取得されたときのタイムスタンプ。ローカル・サーバーの場合は、ローカル時間になります。

TimeoutMillis

Long

読取り専用

トランザクション・タイムアウト値(ミリ秒)。この値は、値の設定後に取得されたトランザクション接続にのみ適用されます。この属性は、現時点ではサポートされていません。

TotalActive

Long

読取り専用

現在アクティブなトランザクションの合計数。アクティブなトランザクションは、少なくとも1つの変更されたエントリを含むトランザクションとして数えられ、まだコミットまたはロールバックされていません。複数のメンバーがトランザクションに参加していた可能性がある場合でも、このトランザクションのコーディネータ・メンバーでこの数は保持されます。

TotalCommitted

Long

読取り専用

最後に統計がリセットされてから、トランザクション・マネージャがコミットしたトランザクションの合計数。複数のメンバーがトランザクションに参加していた可能性がある場合でも、このトランザクションのコーディネータ・メンバーでこの数は保持されます。

TotalRecovered

Long

読取り専用

最後に統計がリセットされてから、トランザクション・マネージャがリカバリしたトランザクションの合計数。複数のメンバーがトランザクションに参加していた可能性がある場合でも、このトランザクションのコーディネータ・メンバーでこの数は保持されます。

TotalRolledback

Long

読取り専用

最後に統計がリセットされてから、トランザクション・マネージャがロールバックしたトランザクションの合計数。複数のメンバーがトランザクションに参加していた可能性がある場合でも、このトランザクションのコーディネータ・メンバーでこの数は保持されます。

TotalTransactionMillis

Long

読取り専用

アクティブなトランザクションでかかった累積時間(ミリ秒)

操作

TransactionManagerMBean MBeanには、すべてのトランザクション・マネージャの統計をリセットするresetStatistics操作が含まれます。

B レポート・ファイル構成要素

この付録では、レポート・ファイル・デプロイメント・ディスクリプタの要素のリファレンスと、ディスクリプタの簡単な概要を示します。レポート・グループ・デプロイメント・ディスクリプタの要素の詳細は、付録C「レポート・グループ構成要素」を参照してください。

この付録では次の項について説明します。

- レポート・ファイル・デプロイメント・ディスクリプタ

- 要素リファレンス

B.1 レポート・ファイル・デプロイメント・ディスクリプタ

レポート・ファイル・デプロイメント・ディスクリプタは、MBeanに基づいた管理情報を表示するレポートを指定します。coherence.jar/reportsディレクトリには、多くの事前定義済レポート・ファイルが含まれます。これらのレポートを変更するか、必要に応じて新しいレポートを作成します。事前定義レポートの詳細は、第6章「レポート内容の分析」を参照してください。

レポート・ファイル・デプロイメント・ディスクリプタ・スキーマは、coherence-report-config.xsdファイルで定義されます。このファイルは、coherence.jarライブラリのルートおよび次のWeb URLにあります。

http://xmlns.oracle.com/coherence/coherence-report-config/1.0/coherence-report-config.xsd

<report-config>要素はデプロイメント・ディスクリプタのルート要素であり、通常はXSDリファレンス、ネームスペース・リファレンス、およびcoherence-report-config.xsdファイルの場所が含まれます。次に例を示します。

<?xml version='1.0'?>

<report-config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-report-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/coherence-report-config
coherence-report-config.xsd">

注意:

- coherence.jarライブラリにあるスキーマは、xsi:schemaLocation属性がWeb URLを参照する場合であっても、常に実行時に使用されます。

- スキーマ検証を無効にするには、xsi:schemaLocation属性を省略します。

- デフォルトのキャラクタ・セットがASCIIではなくEBCDICである環境にOracle Coherenceをデプロイする場合、デプロイメント・ディスクリプタ・ファイルがASCII形式であり、ランタイム環境にバイナリ形式でデプロイされることを確認してください。

要素リファレンス

表B-1は、レポート・ファイル・デプロイメント・ディスクリプタのすべての非終端要素を示しています。

表B-1 レポート・ファイル・デプロイメント・ディスクリプタの非終端要素

要素

使用場所

column

row

filter

filters

filters

report

params

filter、column

query

report、column

report

report-config

report-config

ルート要素

row

report-config

column

使用場所: row

説明

column要素には、レポート列を生成するために必要な情報が含まれます。column要素では、列を一意に識別するid属性の使用がサポートされています。このIDは、column-refサブ要素内で使用されます。

要素

表B-2は、column要素のサブ要素を示しています。

表B-2 columnサブ要素

要素

必須/
オプション

説明

type

オプション

XmlColumn実装を指定します。type要素は、レポートの列タイプを定義します。有効な値は次のとおりです。

- attribute: (デフォルト)MBean属性からのデータを含む列。

- key: MBeanのキー属性からの値を含む列。

- method: MBeanのメソッド起動の結果を含む列。

- function: 関数または集計の結果を含む列。この表のfunction-name要素を参照してください。

- global: どのMBeanにも関連していない値を含む列。グローバルな列名は{report-time}、{report-count}および{node-id}です。

- constant: 数値の定数文字列を含む列。

- property: Javaのシステム・プロパティの値を含む列。

name

オプション

MBeanの属性名またはメソッド名を指定します。複合データ型の場合、name要素にスラッシュ(/)区切りの名前を含められます。

header

オプション

列ヘッダーを指定します。この項目が省略された場合、name要素の値が使用されます。

delim

オプション

列値または配列値を区切る文字を指定します。有効な値は{tab}、{space}または空白以外の文字です。

query

オプション

レポートまたは列に情報を提供しているすべてのMBeanを検出する、JMX問合せを作成するために必要な情報を指定します。

hidden

オプション

レポートの列値を非表示にするかどうかを指定します。有効な値は、trueとfalseです。

column-ref

オプション

列識別子への参照を指定します。この参照によって、列値が引数としてフィルタまたは別の列に渡されます。

function-name

オプション

関連付けられているMBeanの属性値に適用する計算の名前を指定します。この要素は、type要素がfunctionである場合にのみ有効です。有効な値は次のとおりです。

- sum: 取得したすべての属性値の合計

- avg: 取得したすべての属性値の平均

- min: 取得したすべての属性値の最小数値

- max: 取得したすべての属性値の最大数値

- add: 2つの列参照の値の合計

- subtract: 2つの列参照の値の差異

- multiply: 2つの列参照の値の積

- divide: 2つの列参照の値の比率

params

オプション

引数列またはフィルタ参照を指定します

data-type

オプション

定数列のデータ型を指定します。有効な値はdoubleおよびstringです。

value

オプション

定数列の値を指定します

group-by

オプション

この列を問合せのgroup by句に含めるかどうかを指定します。有効な値は、trueとfalseです。デフォルト値はfalseです。

subquery

オプション

この列を副問合せの一部として含めるかどうかを指定します。有効な値は、trueとfalseです。デフォルト値はfalseです。

return-neg

オプション

問合せで負の値が返されるかどうかを指定します。負の値は、Oracle Coherence MBeanではerrorまたはnot availableのコードであると見なされます。デフォルトでは、これらのコードではゼロが返されるため、列計算には影響しません。有効な値は、trueとfalseです。デフォルト値はfalseです。

filter

使用場所: filters

説明

filter要素は、レポートで使用するフィルタを定義します。filter要素では、フィルタを一意に識別するid属性の使用がサポートされています。IDは、filter-ref要素を持つフィルタを示すときに使用します。フィルタをparams要素およびquery要素内から参照できます。

要素

表B-3は、filter要素のサブ要素を示しています。

表B-3 filterのサブ要素

要素

必須/
オプション

説明

type

オプション

XmlFilter実装を指定します。type要素は、レポートに存在するフィルタのタイプを定義します。有効な値は次のとおりです。

- equals: 2つ以上の列参照を比較して、その結果が等しいかどうかを調べるフィルタ。

- greater: 2つの列参照を比較して、その結果のgreater than状態を調べるフィルタ。これらのいずれかの値がnullになる場合、評価結果はfalseになります(このアプローチは、SQLにおけるNULL値の処理と同様です)。

- less: 2つの列参照を比較して、その結果のless than状態を調べるフィルタ。これらのいずれかの値がnullになる場合、評価結果はfalseになります

- not: フィルタ参照の論理notを返すフィルタ。

- and: 2つのフィルタ参照の論理andを返すフィルタ。

- or: 2つのフィルタ参照の論理orを返すフィルタ。

params

オプション

引数列またはフィルタ参照を指定します

filters

使用場所: report

説明

filters要素には、任意の数のfilter要素が含まれます。

要素

表B-4は、filters要素のサブ要素を示しています。

表B-4 filtersのサブ要素

要素

必須/
オプション

説明

filter

オプション

レポートで使用するフィルタを定義します

params

使用場所: column、filter、query

説明

params要素は、引数列またはフィルタ参照を識別します。

要素

表B-5は、params要素のサブ要素を示しています。

表B-5 paramsのサブ要素

要素

必須/
オプション

説明

filter-ref

必須

フィルタIDへの参照を指定します。この参照によって、フィルタが引数として問合せまたは別のフィルタに渡されます。

column-ref

必須

列識別子への参照を指定します。この参照によって、列値が引数としてフィルタまたは別の列に渡されます。

query

使用場所: column、report

説明

query要素には、レポートまたは列に情報を提供しているすべてのMBeanを検出する、JMX問合せを作成するために必要な情報が含まれます。問合せは<pattern>要素内に入力します。

例

次の例では、レポートまたは列にすべてのノードMBeanが含まれます。

<query>
<pattern>Coherence:type=Node,*</pattern>
</query>

次の例では、レポートまたは列にクラスタMBeanのみが含まれます。

<query>
<pattern>Coherence:type=Cluster</pattern>
</query>

パターン文字列を使用すると、レポート列からのランタイム値をマクロにより代入できます。たとえば、問合せパターンでキャッシュ名を指定するには、次の構文のとおりにreporter.cacheNameシステム・プロパティを定義します。

<report>
...
<query>
<pattern>Coherence:type=Cache,name={CacheName},*</pattern>
</query>
<row>
<column id="CacheName">
<type>property</type>
<name>reporter.cacheName</name>
</column>
</row>
</report>

場合によって、問合せパターンの結果が、よく知られているキー属性を持つMBean名のリストになることがあります。key属性を使用して、関連付けられた(結合済の)MBeanから属性を取得してください。たとえば、Coherence:type=Service,*パターンの結果は、Coherence:type=Service,nodeId=NNNフォーマットのMBeanになることがわかっているため、次の構成では、対応するNodeMBeanのMemberName属性をServiceMBeanのServiceName属性とともに出力します。

<report>
...
<query>
<pattern>Coherence:type=Service,*</pattern>
<params>
<column-ref>MemberName</column-ref>
<column-ref>NodeId</column-ref>
<column-ref>ServiceName</column-ref>
</params>
</query>
<row>
<column id="MemberName">
<type>attribute</type>
<name>MemberName</name>
<query>
<pattern>Coherence:type=Node,nodeId={NodeId}</pattern>
</query>
</column>
<column id="NodeId">
<type>key</type>
<name>nodeId</name>
</column>
<column id="ServiceName">
<type>key</type>
<name>name</name>
</column>
</row>
</report>

要素

表B-6は、query要素のサブ要素を示しています。

表B-6 queryのサブ要素

要素

必須/
オプション

説明

pattern

必須

レポートに含めるJMX問合せまたはオブジェクト名を指定します

filter-ref

オプション

フィルタIDへの参照を指定します。この参照によって、フィルタが引数として問合せまたは別のフィルタに渡されます。

params

オプション

引数列またはフィルタ参照を指定します

report

使用場所: report-config

説明

report要素には、JMXベース・レポートを生成するために必要な情報が含まれます。レポートには任意の数のreport要素を含められますが、レポート・ファイルには通常、単一のレポート定義が含まれます。

要素

表B-7は、report要素のサブ要素を示しています。

表B-7 reportのサブ要素

要素

必須/
オプション

説明

description

オプション

レポートの説明的な見出しを指定します

file-name

必須

生成されたレポートのファイル名を指定します。このファイル名は絶対パスか、対応するレポート・グループ・デプロイメント・ディスクリプタで指定されているディレクトリへの相対パスで指定します。指定したファイルが存在する場合、このファイルに新しいレポート行が追加されます。存在しない場合は、新しいレポート・ファイルが作成されます。

このファイル名には次の3つのマクロが含まれています。

- {batch}: このマクロはカウンタ(順序番号)に置き換えられます。

- {node}: このマクロはクラスタ・メンバーIDに置き換えられます。このマクロは、様々なクラスタ・メンバーのレポートを区別するために使用します。

- {date}: このマクロは現在の日付(YYYYMMDD)に置き換えられます。

注意: レポータの実行プロセスには、レポートの出力ディレクトリへの読取り、書込みおよび作成の権限が必要です。

delim

オプション

列値または配列値を区切る文字を指定します。有効な値は{tab}、{space}または空白以外の文字です。

hide-headers

オプション

レポートに説明と列ヘッダーを含めるかどうかを指定します。有効な値は、trueとfalseです。

filters

オプション

レポートのフィルタ・グループを指定します

query

必須

レポートまたは列に情報を提供しているすべてのMBeanを検出する、JMX問合せを作成するために必要な情報を指定します

row

必須

レポート行を生成するための情報を指定します

report-config

ルート要素

説明

report-config要素は、レポート構成デプロイメント・ディスクリプタのルート要素で、レポート定義が含まれています。

要素

表B-8は、report-config要素のサブ要素を示しています。

表B-8 report-configのサブ要素

要素

必須/
オプション

説明

report

必須

JMXベース・レポートを生成するために必要な情報を指定します

row

使用場所: report-config

説明

row要素には、レポートに組み込む列のリストが含まれます。

要素

表B-9は、row要素のサブ要素を示しています。

表B-9 rowのサブ要素

要素

必須/
オプション

説明

column

必須

レポート列を生成する情報を指定します

C レポート・グループ構成要素

この付録では、レポート・グループ・デプロイメント・ディスクリプタの要素のリファレンスと、ディスクリプタの簡単な概要を示します。個々のレポート・ファイルを作成するレポート・ファイル・デプロイメント・ディスクリプタの要素の詳細は、付録B「レポート・ファイル構成要素」を参照してください。

この付録では次の項について説明します。

- レポート・グループ構成デプロイメント・ディスクリプタ

- 要素リファレンス

C.1 レポート・グループ構成デプロイメント・ディスクリプタ

レポート・グループ・デプロイメント・ディスクリプタでは、レポートが有効な場合に任意の数の個別レポートの作成を指定します。coherence.jar/reportsディレクトリには、2つの事前定義済ディスクリプタが含まれます。report-group.xmlディスクリプタはデフォルトのディスクリプタで、事前定義済レポートのサブセットが含まれています。report-all.xmlディスクリプタには、すべての事前定義済レポートが含まれます。これらの事前定義済レポート・グループ・デプロイメント・ディスクリプタを変更するか、必要に応じて新しいレポート・グループ・デプロイメント・ディスクリプタを作成します。実行時に使用するレポート・グループ・デプロイメント・ディスクリプタの名前と場所はオペレーション・デプロイメント・ディスクリプタで構成されており、オペレーション・オーバーライド・ファイルでオーバーライドされます。詳細は、第4章「Oracle Coherenceのレポート機能の使用」を参照してください。

レポート・グループ・デプロイメント・ディスクリプタ・スキーマは、coherence-report-group-config.xsdファイルで定義されます。このファイルは、coherence.jarライブラリのルートおよび次のWeb URLにあります。

http://xmlns.oracle.com/coherence/coherence-report-group-config/1.0/coherence-report-group-config.xsd

<report-group>要素はディスクリプタのルート要素であり、通常はXSDリファレンス、ネームスペース・リファレンス、およびcoherence-report-group-config.xsdファイルの場所が含まれます。次に例を示します。

<?xml version='1.0'?>
<report-group xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.oracle.com/coherence/coherence-report-group-config"
xsi:schemaLocation="http://xmlns.oracle.com/coherence/
coherence-report-group-config coherence-report-group-config.xsd">

注意:

- coherence.jarライブラリにあるスキーマは、xsi:schemaLocation属性がWeb URLを参照する場合であっても、常に実行時に使用されます。

- スキーマ検証を無効にするには、xsi:schemaLocation属性を省略します。

- デフォルトのキャラクタ・セットがASCIIではなくEBCDICである環境にOracle Coherenceをデプロイする場合、デプロイメント・ディスクリプタ・ファイルがASCII形式であり、ランタイム環境にバイナリ形式でデプロイされることを確認してください。

要素リファレンス

表C-1は、レポート・グループ・デプロイメント・ディスクリプタのすべての非終端要素を示しています。

表C-1 レポート・グループ・デプロイメント・ディスクリプタの非終端要素

要素

使用場所

init-param

init-params

init-params

report-config

report-config

report-group

report-group

ルート要素

report-list

report-group

init-param

使用場所: init-params

説明

init-param要素には、レポートの初期化パラメータを記述します。このパラメータは、パラメータ名(またはパラメータ・タイプ)とその値で構成されます。

要素

表C-2は、init-param要素のサブ要素を示しています。

表C-2 init-paramのサブ要素

要素

必須/
オプション

説明

param-name

オプション

初期化パラメータの名前を指定します。

この要素は、param-type要素と一緒には使用できません。

param-type

オプション

初期化パラメータのJavaタイプを指定します。サポートされているタイプは次のとおりです。

- string: 値がjava.lang.Stringであることを示します

- long: 値がjava.lang.Longであることを示します

- double: 値がjava.lang.Doubleであることを示します

この要素は、para-name要素と一緒には使用できません。

param-value

必須

初期化パラメータの値を指定します。この値は、パラメータの型に固有の形式にします。

init-params

使用場所: report-config

説明

init-params要素には、初期化パラメータのリストを記述します。

要素

表C-3は、init-params要素のサブ要素を示しています。

表C-3 init-paramsのサブ要素

要素

必須/
オプション

説明

init-param

オプション

レポートの初期化パラメータを指定します

report-config

使用場所: report-group

説明

report-configには、レポートの構成ファイル名および初期化パラメータを記述します。

要素

表C-4は、report-config要素のサブ要素を示しています。

表C-4 report-configのサブ要素

要素

必須/
オプション

説明

location

必須

coherence-report-config.xsdファイルに準拠するレポート構成ディスクリプタへのパスを指定します。パスには、ファイルまたはURLを含められます。

init-params

オプション

初期化パラメータのリストを指定します

report-group

使用場所: ルート要素

説明

report-group要素には、レポート・リスト、実行間隔、レポート・パラメータおよびバッチの出力ディレクトリを記述します。

要素

表C-5は、report-group要素のサブ要素を示しています。

表C-5 report-groupのサブ要素

要素

必須/
オプション

説明

frequency

必須

レポート・バッチのリフレッシュ頻度を指定します。値は秒(s)または分(m)単位で入力します。たとえば、値10sは10秒ごとに、値5mは5分ごとにレポートをリフレッシュします。適切なリフレッシュ頻度を選択することが重要です。このリフレッシュ頻度が短すぎると、レポートのデータが過多になるためかなりのディスク領域を消費します。リフレッシュ頻度が長すぎると、レポートに十分な情報が記述されません。また、レポート機能を有効化する前に、履歴情報をパージおよびアーカイブするプロセスを決定してください。

output-directory

オプション

レポート構成ファイルの出力ファイル名の先頭に付加するディレクトリ・パスです。クラスタ・メンバーには、このパスに対する読取り/書込みアクセスを付与する必要があります。

<output-directory>要素は、オプションのsystem-property属性をサポートします。属性値は、構成された出力場所をオーバーライドするために実行時に使用できる、ユーザー定義名です。

事前定義済レポート・グループ構成ファイルで使用されている事前構成済システム・プロパティ・オーバーライドは、tangosol.coherence.reporter.output.directoryです。

report-list

必須

レポート構成のリストを指定します

report-list

使用場所: report-group

説明

report-list要素には、バッチに含めるレポートのリストを記述します。

要素

表C-6は、report-list要素のサブ要素を示しています。

表C-6 report-listのサブ要素

要素

必須/
オプション

説明

report-config

必須

レポート構成ファイルと対応する初期化パラメータの場所を指定します

オラクル社の法律上の注意点について

コピーライトについて

Copyright © 1994-2014, Oracle and/or its affiliates.All rights reserved.

商標と登録商標について

OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

ライセンス制約の保証と結果的に生じる損害の免責

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

保証免責

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

制限付権利

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.No other rights are granted to the U.S. Government.

危険な用途への使用について

このソフトウェアもしくはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション（人的傷害を発生させる可能性があるアプリケーションを含む）への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性（redundancy）、その他の対策を講じることは使用者の責任となります。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

第三者のコンテンツ、製品、サービスに対する免責事項

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

ドラフトのアルファ版およびベータ版ドキュメントについて

このドキュメントが試作版の場合:

このドキュメントは試作版であり、デモおよび暫定使用のみを目的としたものです。このソフトウェアを使用するハードウェアに限定するものではありません。オラクル社およびその関連会社は、このドキュメントに関して一切の責任を負わず、いかなる保証もいたしません。また、このドキュメントを使用したことによって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。