9. モニタリング

9.1. モニタリングについて

モニタリングを行うための手順について説明します。

9.1.1. WebOTXが提供するパフォーマンス情報

WebOTXでは、モニタリングを行うことでパフォーマンス情報を取得することができます。 デフォルトでは次のようなパフォーマンス情報を提供しています。

デフォルトで採取できるパフォーマンス情報
表9.1.1-1
パフォーマンス情報
(WebOTX統計MBean)
説明
domain ドメインのパフォーマンス情報です。
jvm エージェントプロセスのJVMのパフォーマンス情報です。
デフォルトで採取できるパフォーマンス情報(Starndard, Enterpriseのみ)
表9.1.1-2
パフォーマンス情報
(WebOTX統計MBean)
説明
ClientSession 接続クライアントのパフォーマンス情報です。
IIOPListener IIOPリスナのパフォーマンス情報です。
interface インターフェースのパフォーマンス情報です。
javaAsyncMsg Java非同期メッセージ(非MDB)のパフォーマンス情報です。
operation オペレーションのパフォーマンス情報です。
process-group プロセスグループのパフォーマンス情報です。
Queue キューのパフォーマンス情報です。
tpsystem TPモニタのパフォーマンス情報です。
VD VDリソースのパフォーマンス情報です。

また、モニタリングレベルを設定することでさらに詳細なパフォーマンス情報を提供します。 モニタリング設定はモジュール単位で設定することが可能です。 以下にモニタリングを提供するモジュール一覧を示します。 otxadminコマンドによりモニタリングレベルを設定することができます。

パフォーマンス情報を提供するモジュール
表9.1.1-3
モジュール 既定値 説明
コネクタコネクションプール OFF コネクションプールに関する統計情報。OFF、LOW、HIGHのいずれかを設定する。
EJBコンテナ OFF EJBコンテナに関する統計情報。OFF、LOW、HIGHのいずれかを設定する。
HTTPサービス OFF WebコンテナのHTTPサービスに関する統計情報。OFFもしくはONを設定する。
JVM OFF JVM(Java Virtual Machine)に関する統計情報。OFF、LOW、HIGHのいずれかを設定する。
JMSサービス OFF JMSサービスに関する統計情報。OFFもしくはONを設定する。
JDBCデータソース OFF JDBCデータソースに関する統計情報。OFF、LOW、HIGHのいずれかを設定する。
Transactionサービス OFF Transactionサービスに関する統計情報。OFF、LOW、HIGHのいずれかを設定する。
Webコンテナ OFF Webコンテナに関する統計情報。OFF、LOW、HIGHのいずれかを設定する。
配備 OFF 配備に関する統計情報。OFF、LOW、HIGHのいずれかを設定する。
セキュリティ OFF セキュリティに関する統計情報。OFF、ONのいずれかを設定する。
コネクタサービス OFF コネクタサービスに関する統計情報。OFF、LOW、HIGHのいずれかを設定する。

9.1.1.1. コネクタコネクションプール

コネクタコネクションプールでは次のようなパフォーマンス情報が採取できます。

表9.1.1.1-1
パフォーマンス情報
(WebOTX統計MBean)
説明 採取できるレベル
connector-connection-pool コネクタコネクションプールのパフォーマンス情報です。 HIGH

9.1.1.2. EJBコンテナ

EJBコンテナでは次のようなパフォーマンス情報が採取できます。

表9.1.1.2-1
パフォーマンス情報
(WebOTX統計MBean)
説明 採取できるレベル
bean-cache EJBキャッシュのパフォーマンス情報です。 HIGH
bean-method beanメソッドのパフォーマンス情報です。 HIGH
bean-pool EJBプールのパフォーマンス情報です。 HIGH
message-driven-bean MessageDrivenBeanのパフォーマンス情報です。 HIGH
singleton-bean SingletonBeanのパフォーマンス情報です。 HIGH
stateful-session-bean StatefulSessionBeanのパフォーマンス情報です。 HIGH
stateless-session-bean StatelessSessionBeanのパフォーマンス情報です。 HIGH

9.1.1.3. HTTPサービス

HTTPサービスでは次のようなパフォーマンス情報が採取できます。

表9.1.1.3-1
パフォーマンス情報
(WebOTX統計MBean)
説明 採取できるレベル
connection-queue Webコンテナのコネクションキューに関するパフォーマンス情報です。 HIGH
file-cache Webコンテナのファイルキャッシュに関するパフォーマンス情報です。 HIGH
keep-alive Webコンテナのキープアライブに関するパフォーマンス情報です。 HIGH
request Webコンテナのリクエストに関するパフォーマンス情報です。 HIGH
thread-pool Webコンテナのスレッドプールに関するパフォーマンス情報です。 HIGH
virtualserverinfo Webコンテナの仮想サーバに関するパフォーマンス情報です。 HIGH

9.1.1.4. JVM

JVMでは次のようなパフォーマンス情報が採取できます。

表9.1.1.4-1
パフォーマンス情報
(WebOTX統計MBean)
説明 採取できるレベル
class-loading-system JVM内で使用されるクラスのロードに関するパフォーマンス情報です。 LOW
compilation-system JVM内で実行されるコンパイル処理に関するパフォーマンス情報です。 LOW
garbage-collector JVM内で実行されるGC処理に関するパフォーマンス情報です。 LOW
memory JVM内でのメモリの消費に関するパフォーマンス情報です。 LOW
operating-system JVMが動作するOSに関するパフォーマンス情報です。 LOW
runtime JVMの実行に関するパフォーマンス情報です。 LOW
thread-system JVM内で生成されるスレッドに関するパフォーマンス情報です。 LOW
memory-pool JVM内でのメモリプールに関する情報パフォーマンス情報です。 HIGH
threadinfo JVM内で生成されるスレッドに関するパフォーマンス情報です。 HIGH

9.1.1.5. JMSサービス

JMSサービスでは次のようなパフォーマンス情報が採取できます。

表9.1.1.5-1
パフォーマンス情報
(WebOTX統計MBean)
説明 採取できるレベル
jms-physical-destination JMSサービスの物理的送信先ごとのパフォーマンス情報です。 ON
jms-service JMSサービスのパフォーマンス情報です。 ON

9.1.1.6. JDBCデータソース

JDBCデータソースでは次のようなパフォーマンス情報が採取できます。

表9.1.1.6-1
Wパフォーマンス情報
(WebOTX統計MBean)
説明 採取できるレベル
jdbc-datasource JDBCデータソースのパフォーマンス情報です。 LOW, HIGH

9.1.1.7. Transactionサービス

Transactionサービスでは次のようなパフォーマンス情報が採取できます。

表9.1.1.7-1
パフォーマンス情報
(WebOTX統計MBean)
説明 採取できるレベル
transaction-service Transactionサービスのパフォーマンス情報です。 LOW

9.1.1.8. Webコンテナ

Webコンテナでは次のようなパフォーマンス情報が採取できます。

表9.1.1.8-1
パフォーマンス情報
(WebOTX統計MBean)
説明 採取できるレベル
jsp JSPのパフォーマンス情報です。 HIGH
servlet サーブレットのパフォーマンス情報です。 HIGH
servlet-instance サーブレットのパフォーマンス情報です。 HIGH
session セッションのパフォーマンス情報です。 HIGH

9.1.1.9. 配備

表9.1.1.9-1
パフォーマンス情報
(WebOTX統計MBean)
説明 採取できるレベル
deployment 配備のパフォーマンス情報です。 HIGH

9.1.1.10. セキュリティ

表9.1.1.10-1
パフォーマンス情報
(WebOTX統計MBean)
説明 採取できるレベル
ejb-security EJBアプリケーションのセキュリティに関するパフォーマンス情報です。 ON
security セキュリティに関するパフォーマンス情報です。 ON
security-realm レルムに関するパフォーマンス情報です。 ON
web-security-deployer Webアプリケーションのセキュリティに関するパフォーマンス情報です。 ON

9.1.1.11. コネクタサービス

レベルを変更した場合、WebOTX内部のモニタの登録/削除が実行されます。運用管理ツール上は何も変更されません。

9.1.2. モニタの種類

統計情報のモニタリングはMonitorMBeanにより行なわれます。MonitorMBeanは管理対象の属性に応じていくつかの種類があります。

9.1.2.1. CounterMonitor

Counter Monitorはインクリメントされる整数の属性値をモニタリングします。 granularityPeriod(GP)毎に対象となる数値(1ずつ変化している)のチェックを行い、 しきい値を超えている場合イベント発生となります。 この後、次の最初のしきい値にOffset分の値を加えたものを新しいしきい値とし、再度GP毎のチェックを行います。 例えばリクエスト数など単純に増加する属性などのモニタリングに用います。

CounterMonitor
図9.1.2.1-1

発生するイベントについて
表9.1.2.1-1
モジュール 説明
jmx.monitor.counter.threshold 取得した値がthreshold値を超えた

9.1.2.2. Gauge Monitor

小数点のある値 (Double, Floatなど)も含め、ゲージのように上下する属性値をモニタリングします。 granularityPeriod(GP)毎に対象となる数値(1ずつ変化している)のチェックを行い、 thresholdHighValueとthresholdLowValueの間を越えた (上限よりも上、もしくは下限より下の値になった)ときにイベントが発生します。 例えばキュー滞留数などの上限チェックに用います。

Gauge Monitor
図9.1.2.2-1

発生するイベントについて
表9.1.2.2-1
モジュール 説明
jmx.monitor.gauge.high 取得した値が上限値を超えた
jmx.monitor.gauge.low 取得した値が下限値を下回った

9.1.2.3. String Monitor

文字列が変更されたかをモニタリングします。GP毎に文字列のチェックを行い、2種類のチェックを行います (比較元の文字列-derived gaugeと同じor違う)図の例の場合は、その両方を行った場合の図です。 NotificationMatchはderived gaugeに設定される文字列と対象文字列を比較して、最初に一致したときにイベントが発生します。 NotificationDifferはderived gaugeに設定される文字列と対象文字列を比較して、最初に不一致を発見したときイベントが発生します。 つまり、MatchであれDifferであれ、一度イベントが発生された後にイベントは発生しません。 図のevent1回目〜2回目のGPや3回目〜4回目のevent間、4回目以降のeventの各GPでeventは発生しません。

String Monitor
図9.1.2.3-1

発生するイベントについて
表9.1.2.3-1
モジュール 説明
jmx.monitor.string.matches 比較元文字列と最初に一致した
jmx.monitor.string.differs 比較元文字列と最初に不一致になった

9.1.2.4. Alive Check Monitor

サービスのアライブチェックを行います、サービスが正常動作していない(アボート、ストールなど)場合、イベントが発生します。 動作的にはString Monitorと同じです。 GP毎にstatus属性値を取得し、アライブ状態として指定した状態値と最初に一致しない場合、イベントが発生します。 また、一定期間アライブ状態にならない場合もイベントが発生します。

Alive Check Monitor
図9.1.2.4-1

発生するイベントについて
表9.1.2.4-1
モジュール 説明
nec.webotx.monitor.alivecheck.not-alive 前回取得属性値が監視属性値で、今回取得した属性値が監視属性値と異なった
nec.webotx.monitor.alivecheck.not-running 監視属性値でない状態が、monitorRunningWaitPeriod続いている

9.1.3. WebOTX 統計 MBean

モニタリング情報は全て WebOTX 統計 MBean として登録されています。 このMBeanの属性を取得することにより統計情報を取得することができます。 WebOTX 統計 MBean はモニタリング設定を有効にすることにより登録されます。

WebOTX 統計 MBean の一覧については、 [ リファレンス集 運用管理・設定編 > 3. モニタリング > 3.1. WebOTX統計MBean一覧 ] を参照してください。

9.1.3.1. WebOTX 統計 MBean の属性とオペレーション

WebOTX 統計 MBean はルートの統計MBeanを頂点にツリー構造を形成し、 統計情報を保有するモジュール単位で作成されます。 属性としてパフォーマンス情報を保持し、管理するパフォーマンス情報の一覧を取得するオペレーションを提供します。

属性

それぞれのMBeanが保持する属性はJ2EEのManagement仕様で規定されたStatsインタフェースの情報を保持します。 例えばJVMのWebOTX 統計 MBeanはJVMStatsインタフェースで規定されている属性を保持します。

オペレーション

WebOTX 統計 MBeanは必ずgetChildrenメソッドを提供しています。 それぞれのgetChildrenオペレーションを呼び出すことにより、親として管理している統計MBeanのObjectNameのリストを返却します。