ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Coherence*WebでのHTTPセッション・マネージメントの管理
12c (12.1.2)
B70746-02
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

6 アプリケーションの監視

この章では、提供されているJMX MBeanを使用して、システム上のCoherence*Webのヘルス状態およびパフォーマンスを監視する方法について説明します。また、管理者および開発者が容量の管理や問題のトラブルシューティングを行う際に役立つ複数の事前構成済レポートを提供するJMXベースのレポート・ユーティリティであるReporterの実行方法についても説明します。

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


注意:

この項では、Coherence*Web JMXの管理と監視を有効にするために、Coherenceクラスタ化JMXフレームワークがすでに設定されているものとします。このフレームワークを設定するには、『Oracle Fusion Middleware Oracle Coherenceのマネージメント』のJMXを使用してCoherenceを管理する方法に関する項にある構成およびインストールの手順を参照してください。


6.1 JMXによるアプリケーションの管理と監視

HTTPセッション管理でCoherence*Webを使用しているWebアプリケーションの管理属性および操作は、HttpSessionManagerMBean MBean (com.tangosol.coherence.servlet.management.HttpSessionManagerMBean)から表示できます。

設定中に、Coherence*WebのWebアプリケーションごとにHttpSessionManagerクラスのインスタンスが1つ登録されます。MBean属性の値を表示するには、JConsoleなどの監視ツールを使用できます。このMBeanは、該当のWebアプリケーションを終了すると登録解除されます。

表6-1は、登録のためにMBeanによって使用されるオブジェクト名を示しています。

表6-1 HttpSessionManagerMBeanのオブジェクト名

マネージドBean オブジェクト名

HttpSessionManager

type=HttpSessionManager, nodeId=cluster node id, appId=web application id


表6-2は、HttpSessionManagerが提供する情報を示しています。操作を表すresetStatistics以外の名前はすべて属性を表します。

MBean属性の中には、次の接頭辞を使用しているものがあります。

表6-2 HttpSessionManagerから返される情報

属性名 データ
説明

AverageReapDuration

long

統計をリセットした時点以降の平均リープ時間(リープ・サイクルが完了するまでの時間)でミリ秒単位。「セッション・リーパー・パフォーマンス統計の取得」を参照してください。

CollectionClassName

String

使用中のHttpSessionCollection実装の完全修飾クラス名。HttpSessionCollectionインタフェースは、HttpSessionModelオブジェクトのコレクションの抽象モデルです。クライアントとサーバー間のセッションの通信方法により、インタフェースはまったく影響を受けません。

FactoryClassName

String

使用中のFactory実装の完全修飾クラス名。SessionHelperクラスではSessionHelper.Factoryクラスを使用して、サーブレット仕様の重要な部分を実装するオブジェクトを取得します。Factory実装は、アプリケーション・サーバー独自のオブジェクトのかわりにアプリケーションの前に配置できます。これによって、アプリケーション・サーバー自体の外見上の実装を変更できます(クラスタリングの追加など)。

LastReapDuration

long

最後のリープ・サイクルの終了に要した時間(ミリ秒単位)。「セッション・リーパー・パフォーマンス統計の取得」を参照してください。

LocalAttributeCacheName

String

分散されないセッション属性を保存するローカル・キャッシュの名前。この属性がnullの場合、セッション属性のローカル記憶域は無効です。

LocalAttributeCount

Integer

セッション属性のローカル・キャッシュに保存された分散されないセッション属性の数。この属性が-1の場合、セッション属性のローカル記憶域は無効です。

LocalSessionCacheName

String

非分散セッションを格納するローカル・キャッシュの名前。この属性がnull値の場合、ローカル・セッション記憶域は無効です。

LocalSessionCount

Integer

ローカル・セッション・キャッシュに格納された非分散セッションの名前。属性値が-1の場合、ローカル・セッション記憶域は無効です。

MaxReapedSessions

long

統計をリセットした時点以降にリープ・サイクルでリープされたセッションの最大数。「セッション・リーパー・パフォーマンス統計の取得」を参照してください。

NextReapCycle

java.lang.Date

java.lang.Dateデータ型で表現した次のリープ・サイクルの時間。「セッション・リーパー・パフォーマンス統計の取得」を参照してください。

OverflowAverageSize

Integer

統計を前回リセットした時点以降、オーバーフロー・クラスタ・キャッシュに保存されたセッション属性の平均サイズ(バイト数)。この属性が-1の場合、SplitHttpSessionCollectionモデルは使用されていません。

OverflowCacheName

String

所定のサイズより大きいことから、シリアライズしたセッション・オブジェクト自体の一部としてではなく、個別のキャッシュ・エントリとしたほうが効率的に管理できると判断される大型の属性を保存するクラスタ・キャッシュの名前。SplitHttpSessionCollectionモデルが使用されていない場合、null値となります。

OverflowMaxSize

Integer

統計を前回リセットした時点以降、オーバーフロー・クラスタ・キャッシュに保存されたセッション属性の最大サイズ(バイト数)。SplitHttpSessionCollectionモデルが使用されていない場合、属性値は-1となります。

OverflowThreshold

Integer

大型の属性向けに確保されている独立したオーバーフロー・キャッシュにシリアライズ形式の属性値を格納する必要がある場合における最小の長さ(バイト数単位)。SplitHttpSessionCollectionモデルが使用されていない場合、属性値は-1となります。

OverflowUpdates

Integer

統計が最後にリセットされてから、オーバーフロー・クラスタ・キャッシュに保存されたセッション属性の更新回数。SplitHttpSessionCollectionモデルが使用されていない場合、属性値は-1となります。

ReapedSessions

long

前回のサイクル中にリープしたセッションの数。「セッション・リーパー・パフォーマンス統計の取得」を参照してください。

ReapedSessionsTotal

long

統計をリセットした時点以降にリープされた期限切れセッションの数。「セッション・リーパー・パフォーマンス統計の取得」を参照してください。

ServletContextCacheName

String

javax.servlet.ServletContext属性を保存するクラスタ・キャッシュの名前。ServletContextがクラスタ化されていない場合、この属性はnullになります。

ServletContextName

String

WebアプリケーションServletContextの名前。

SessionAverageLifetime

Integer

統計を最後にリセットした時点以降、有効期限切れまたは明示的な無効化によって無効になったセッション・オブジェクトの平均存続期間(秒数)。

SessionAverageSize

Integer

統計を最後にリセットした時点以降、セッション記憶域のクラスタ・キャッシュに配置されたセッション・オブジェクトの平均サイズ(バイト数)。

SessionCacheName

String

シリアライズしたセッション・オブジェクトを保存するクラスタ・キャッシュの名前。

SessionIdLength

Integer

生成されたセッションIDの長さ(文字数)。

SessionMaxSize

Integer

統計を最後にリセットした時点以降、セッション記憶域のクラスタ・キャッシュに配置されたセッション・オブジェクトの最大サイズ(バイト数)。

SessionMinSize

Integer

統計を最後にリセットした時点以降、セッション記憶域のクラスタ・キャッシュに配置されたセッション・オブジェクトの最小サイズ(バイト数)。

SessionStickyCount

Integer

Webアプリケーションのこのインスタンスに属するセッション・オブジェクトの数。スティッキー・セッション最適化が無効になっている場合、この属性は-1になります。

SessionTimeout

Integer

セッションの存続期間(秒数)。セッションが無期限の場合、この属性は-1になります。

SessionUpdates

Integer

統計を最後にリセットした時点以降、セッション記憶域のクラスタ・キャッシュに保存されたセッション・オブジェクトの更新回数。

resetStatistics (操作)

void

セッション管理統計をリセットします。


図6-1に、JConsole監視ツールに表示されたHttpSessionManager MBeanの属性を示します。

図6-1 JConsole監視ツールに表示されたHttpSessionManager

JConsoleブラウザに表示されたHttp Session Manager MBean
「図6-1 JConsole監視ツールに表示されたHttpSessionManager」の説明

6.1.1 WebLogic Serverでのアプリケーションの管理および監視

WebLogic Serverでは、HTTPセッション管理にCoherence*Webを使用するWebアプリケーションの管理属性および操作を、WebLogicHttpSessionManagerMBean MBean (com.tangosol.coherence.servlet.management.WebLogicHttpSessionManagerMBean)を介して表示できます。

表6-3は、登録のためにMBeanによって使用されるオブジェクト名を示しています。

表6-3 WebLogicHttpSessionManagerMBeanのオブジェクト名

マネージドBean オブジェクト名

WebLogicHttpSessionManager

type=WebLogicHttpSessionManager, nodeId=cluster node id, appId=web application id


WebLogicHttpSessionManagerクラスはHttpSessionManagerクラスを拡張します。WebLogicHttpSessionManagerクラスは、表6-2で説明されている情報以外に表6-4にリストされている情報も返します。Enterprise Managerはこの情報を使用してCoherence*Webインスタンスをサーバーに関連付けます。

表6-4 WebLogicHttpSessionManager MBeanから返される情報

属性名 データ
説明

ApplicationId

String

WebLogic WebアプリケーションID。

ApplicationName

String

このWebアプリケーションの名前。

ApplicationVersion

String

このWebアプリケーションのバージョン。

DomainName

String

アプリケーションがデプロイされるWebLogicドメインの名前。

IsEar

Boolean

WebアプリケーションがEARファイルのモジュールである場合、trueとなります。

IsListenAddressEnabled

Boolean

HTTPポートがこのサーバーで使用可能な場合、trueとなります。

IsSSLListenPortEnabled

Boolean

HTTPSポートがこのサーバーで使用可能な場合、trueとなります。

ListenAddress

String

サーバーがリスニングするアドレス。

ListenPort

Integer

このサーバーがHTTPリクエストのリスニングを行うポート。

ServerName

String

アプリケーションがデプロイされるWebLogic Serverの名前。

SSLListenPort

Integer

このサーバーがHTTPSリクエストのリスニングを行うポート。


6.2 パフォーマンス・レポートの実行


注意:

Reporterの構成、事前構成済レポートの実行、カスタム・レポートの作成などReporterの詳細は、『Oracle Fusion Middleware Oracle Coherenceのマネージメント』のJMXレポートの使用方法に関する部分の章を参照してください。


Coherenceには、Reporterと呼ばれるJMXベースのレポート・ユーティリティが組み込まれています。Reporterには、管理者および開発者が容量の管理や問題のトラブルシューティングを行う際に役立つ事前構成済レポートが用意されています。これらのレポートは、Coherence*Web向けに特別に調整されています。

Coherence*Webのレポートは、バッチ・レポートの一部として実行します。これらは、report-web-group.xmlバッチ・レポートと包括的report-all.xmlバッチ・レポートの両方で定義されています。それらをカスタム・バッチ・レポートに組み込むこともできます。Coherence*Webのレポートは、デフォルト・レポート・グループ・バッチ・ファイルであるreport-group.xmlでは定義されていません。

デフォルトでは、Reporterによってreport-group.xmlバッチ・レポートが実行されます。かわりにreport-web-group.xmlreport-all.xmlまたはカスタム・バッチ・レポートを実行するには、tangosol.coherence.management.report.configurationシステム・プロパティを使用します。例6-1は、プロパティを使用して、実行するレポート・グループ・バッチ・ファイルをreport-web-group.xmlに変更するコマンドラインを示しています。

例6-1 コマンドラインにおけるレポート・グループの指定

java -Dcom.sun.management.jmxremote
-Dtangosol.coherence.management=all
-Dtangosol.coherence.management.remote=true
-Dtangosol.coherence.management.report.autostart=false
-Dtangosol.coherence.management.report.distributed=false
-Dtangosol.coherence.management.report.configuration=reports/report-web-group.xml
-jar coherence.jar

report-web-group.xmlreport-all.xmlおよびreport-group.xmlのレポート・グループ・バッチ・ファイルは、coherence.jarファイルのreportsフォルダにあります。

6.2.1 Webセッション記憶域レポート

Webセッション記憶域レポートは、セッション・オブジェクトおよびデータが格納されるキャッシュとクラスタとの間のアクティビティに関する統計を記録します。この統計には、セッション記憶域キャッシュに対して実行された書込み、取得および削除の操作回数、ならびにこれらの処理の所要時間に関する情報が含まれます。

このレポートはタブ区切りのファイルで、名前の先頭はYYYYMMDDHH形式の日付で、-session-storage.txtが付加されます。たとえば、2010年1月31日午後1時に作成されたファイルの名前は、2010013113-session-storage.txtになります。表6-5は、Webセッション記憶域レポートの内容を示しています。

表6-5 Webセッション記憶域レポートの内容

列タイトル データ
説明

Batch Counter

long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、Reporterを再起動する場合や、ノード全体での一貫性がない場合にリセットされますが、ファイルの統合において有用な情報になります。

Cache Name

String

常にsession-storageです。これは、キャッシュ使用率レポートとの一貫性を確保するために使用されます。

Evictions

long

前回のレポート作成以降においてクラスタ全体でキャッシュに対して削除が実行されたセッションの合計数。

Report Time

Date

レポートが作成されたシステム時間。

Tier

String

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

TotalFailures

long

前回のレポート作成以降におけるクラスタ全体でのキャッシュに対するセッション記憶域の書込み失敗の合計回数。

TotalGets

long

前回のレポート作成以降におけるクラスタ全体でのセッションの取得操作の合計回数。

TotalGetsMillis

long

前回のレポート作成以降においてクラスタ全体でセッションを取得するためにget()コールするたびに要した時間(GetsMillis)の合計(ミリ秒単位)。

TotalHits

long

前回のレポート作成以降におけるクラスタ全体のセッション・ヒットの合計回数。

TotalHitsMillis

long

前回のレポート作成以降においてクラスタ全体でセッション記憶域に対するヒットしたget()コールの所要時間(HitsMillis)の合計(ミリ秒単位)。

TotalMisses

long

前回のレポート作成以降におけるクラスタ全体でのキャッシュ・ミスを返すセッションの取得操作の合計回数。

TotalMissesMillis

long

前回のレポート作成以降においてクラスタ全体でセッション記憶域に対するミスしたget()コールの所要時間(MissesMillis)の合計(ミリ秒単位)。

TotalPrunes

long

前回のレポート作成以降においてクラスタ全体でセッション記憶域キャッシュが削除された回数の合計。

TotalPrunesMillis

long

前回のレポート作成以降においてクラスタ全体でセッション記憶域キャッシュを削除するための削除操作に要した時間(PrunesMillis)の合計(ミリ秒単位)。

TotalPuts

long

前回のレポート作成以降におけるクラスタ全体でのセッションの更新(書込み操作)の合計回数。

TotalPutsMillis

long

前回のレポート作成以降においてクラスタ全体でセッションを更新するためにput()コールするたびに要した時間(PutsMillis)の合計(ミリ秒単位)。

TotalQueue

long

クラスタ全体におけるセッション記憶域キャッシュのキュー・リンクの合計。

TotalWrites

long

前回のレポート作成以降においてクラスタ全体のキャッシュに対する外部キャッシュ記憶域に書き込まれたセッションの合計数。

TotalWritesMillis

long

前回のレポート作成以降においてクラスタ全体で外部キャッシュ記憶域を更新するための書込み操作を行うたびに要した時間(WritesMillis)の合計(ミリ秒単位)。


6.2.2 Webセッション・オーバーフロー・レポート

Webセッション・オーバーフロー・レポートは、セッション・オブジェクトおよびデータのオーバーフローが格納されるキャッシュとクラスタとの間のアクティビティに関する統計を記録します。この統計には、セッション・オーバーフロー・キャッシュに対して実行された書込み、取得および削除の操作回数、ならびにこれらの処理の所要時間に関する情報が含まれます。

このレポートはタブ区切りのファイルで、名前の先頭はYYYYMMDDHH形式の日付で、-cache-session-overflow.txtが付加されます。たとえば、2010年1月31日午後1時に作成されたファイルの名前は、2010013113-cache-session-storage.txtになります。表6-6は、Webセッション・オーバーフロー・レポートの内容を示しています。

表6-6 Webセッション・オーバーフロー・レポートの内容

列タイトル データ
説明

Batch Counter

long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、Reporterを再起動する場合や、ノード全体での一貫性がない場合にリセットされますが、 ファイルの統合において有用な情報になります。

Cache Name

String

常にsession-overflowです。これは、キャッシュ使用率レポートとの一貫性を確保するために使用されます。

Evictions

long

前回のレポート作成以降においてクラスタ全体でキャッシュに対して削除が実行されたセッション・オーバーフローの合計回数。

Report Time

Date

レポートが実行されたシステム時間。

Tier

String

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

TotalFailures

long

前回のレポート作成以降におけるクラスタ全体のキャッシュに対するセッション・オーバーフロー記憶域の書込み失敗の合計回数。

TotalGets

long

前回のレポート作成以降におけるクラスタ全体でのセッション・オーバーフローの取得操作の合計回数。

TotalGetsMillis

long

前回のレポート作成以降においてクラスタ全体でセッション・オーバーフローを取得するためにget()コールするたびに要した時間(GetsMillis)の合計(ミリ秒単位)。

TotalHits

long

前回のレポート作成以降におけるクラスタ全体のセッション・オーバーフロー・ヒットの合計回数。

TotalHitsMillis

long

前回のレポート作成以降においてクラスタ全体でセッション・オーバーフローに対するヒットしたget()コールの所要時間(HitsMillis)の合計(ミリ秒単位)。

TotalMisses

long

前回のレポート作成以降におけるクラスタ全体でのキャッシュ・ミスを返すセッション・オーバーフローの取得操作の合計回数。

TotalMissesMillis

long

前回のレポート作成以降においてクラスタ全体でセッション・オーバーフローに対するミスしたget()コールの所要時間(MissesMillis)の合計(ミリ秒単位)。

TotalPrunes

long

前回のレポート作成以降においてクラスタ全体でセッション・オーバーフロー・キャッシュが削除された回数の合計。

TotalPrunesMillis

long

前回のレポート作成以降においてクラスタ全体でセッション・オーバーフロー・キャッシュを削除するための削除操作に要した時間(PrunesMillis)の合計(ミリ秒単位)。

TotalPuts

long

前回のレポート作成以降におけるクラスタ全体でのセッション・オーバーフロー(書込み操作)の合計回数。

TotalPutsMillis

long

前回のレポート作成以降においてクラスタ全体でセッション・オーバーフローを更新するためにput()コールするたびに要した時間(PutsMillis)の合計(ミリ秒単位)。

TotalQueue

long

クラスタ全体におけるセッション・オーバーフロー・キャッシュのキュー・リンク・サイズの合計。

TotalWrites

long

前回のレポート作成以降においてクラスタ全体のキャッシュに対する外部キャッシュ記憶域に書き込まれたセッション・オーバーフローの合計回数。

TotalWritesMillis

long

前回のレポート作成以降においてクラスタ全体で外部セッション・オーバーフロー記憶域を更新するための書込み操作を行うたびに要した時間(WritesMillis)の合計(ミリ秒単位)。


6.2.3 Webレポート

Webレポートは、クラスタに対するCoherence*Webアクティビティに関する情報を記録します。このレポートはタブ区切りのファイルで、名前の先頭はYYYYMMDDHH形式の日付と時間で、-web.txtが付加されます。たとえば、2009年1月1日午前2時に作成されたファイルの名前は、2009013102-web.txtになります。表6-7は、Webレポートの内容を示しています。

表6-7 Webレポートの内容

データ
説明

Application

String

アプリケーション名。

Batch Counter

long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、Reporterを再起動する場合や、ノード全体での一貫性がない場合にリセットされますが、 ファイルの統合において有用な情報になります。

Current Overflow Updates

long

前回のレポート作成以降におけるオーバーフロー更新の回数。

Current Session Updates

long

前回のレポート作成以降におけるセッション更新の回数。

LocalAttributeCount

long

ノード上の属性数。

LocalSessionCount

long

ノード上のセッション数。

Node Id

integer

ノード識別子。

OverflowAvgSize

float

属性オーバーフローの平均サイズ。

OverflowMaxSize

long

属性オーバーフローの最大サイズ。

OverflowUpdates

long

統計を最後にリセットした時点以降の属性オーバーフロー更新の合計回数。

Report Time

Date

レポートが作成されたシステム時間。

SessionAverageLifetime

float

セッションがアクティブである平均時間(秒単位)。

SessionAverageSize

float

セッションの平均サイズ。

SessionMaxSize

long

セッションの最大サイズ。

SessionMinSize

long

セッションの最小サイズ。

SessionStickyCount

long

ノード上のスティッキー・セッションの数。

SessionUpdateCount

long

統計を最後にリセットした時点以降のセッション更新の回数。


6.2.4 Webサービス・レポート

Webサービス・レポートは、 Coherence*Webアプリケーションを実行するサービスに関する情報を提供します。このレポートは、処理済のリクエスト、失敗したリクエスト、未処理のリクエスト、処理済のタスク、失敗したタスクおよび未処理のタスクに関する情報を記録します。Request CountおよびTask Countは、サービスのパフォーマンスとスループットの確認に有用です。RequestPendingCountおよびTask Backlogは、容量の問題やブロックされたプロセスの特定に有用です。Task Hung CountTask Timeout CountThread Abandoned CountRequest Timeout Countは、システムで発生した実行の失敗回数を示します。

このレポートはタブ区切りのファイルで、名前の先頭はYYYYMMDDHH形式の日付と時間で、-web-session-service.txtが付加されます。たとえば、2009年1月1日午前2時に作成されたファイルの名前は、2009013102-web-session-service.txtになります。表6-8は、Webサービス・レポートの内容を示しています。

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

列タイトル データ
説明

Batch Counter

Long

関連ファイルの情報の統合に役立つ順次カウンタ。この値は、Reporterを再起動する場合や、ノード全体での一貫性がない場合にリセットされますが、 ファイルの統合において有用な情報になります。

Node Id

String

数値のノード識別子。

Refresh Time

Date

サービス情報がリモート・ノードから更新されたシステム時間。

Request Count

Long

前回のレポート作成以降におけるCoherence*Webアプリケーションによるリクエストの数。

RequestPendingCount

Long

レポート実行時点におけるCoherence*Webアプリケーションによる保留中リクエストの数。

RequestPendingDuration

Long

レポート実行時点におけるCoherence*Webアプリケーションの保留中リクエストの待機時間。

Request Timeout Count

Long

前回のレポート作成以降におけるCoherence*Webアプリケーションによるリクエスト・タイムアウトの数。

Report Time

Date

レポートが実行されたシステム時間。

Service

String

サービス・ファイルと情報をマージする場合にサービス名として使用される静的値(DistributedSessions)。

Task Backlog

Long

レポート作成時点におけるCoherence*Webアプリケーションの未処理タスクの数。

Task Count

Long

前回のレポート作成以降におけるCoherence*Webアプリケーションによって実行されたタスクの数。

Task Hung Count

Long

前回のレポート作成以降におけるCoherence*Webアプリケーションによってハングしたタスクの数。

Task Timeout Count

Long

前回のレポート作成以降におけるCoherence*Webアプリケーションによるタスク・タイムアウトの数。

Thread Abandoned Count

Long

前回のレポート作成以降におけるCoherence*Webアプリケーションによって破棄されたスレッドの数。