Systemwalker Service Quality Coordinatorのトランザクション内訳分析機能を利用して、IJServerクラスタ上で動作するJava EEアプリケーションのコンポーネント毎の処理時間を測定することができます。
トランザクション内訳分析機能の内容は以下となります。
WebアプリケーションおよびEJBアプリケーション毎の処理時間を測定します。
Webアプリケーションはサーブレット/JSP単位、EJBアプリケーションはメソッド単位で測定します。
(関連付け) 1つのリクエストの処理中に複数のWebアプリケーション/EJBアプリケーションが動作する場合、各コンポーネントの処理時間を測定し、一連の処理として関連付けることが可能です(1つのリクエストに関連したトランザクションの処理時間のみ表示するといったことが可能)。
(フィルタリング機能) すべてのリクエストの処理を測定するのでなく、一定の割合のリクエストの処理のみ測定するように設定することも可能です。これにより、スループットにほぼ影響無く測定することができます。
(例外処理) 測定処理で異常が発生しても、リクエスト処理は正常に継続します。異常の発生は測定結果の出力中に通知されます。
注意
本機能を使用するには、Systemwalker Service Quality Coordinator Agentがインストールされている必要があります。詳細は、「システム設計ガイド」の「運用監視関連」を参照してください。
本機能はスタンドアロンサーバとクラスタで使用できます。
Webアプリケーションでは、Servlet/JSP以外のコンテンツ(htmlファイルなど)へのリクエストも測定されます。
以下に連携のための運用操作方法を説明します。
トランザクション内訳分析の有効化操作
トランザクション内訳分析の無効化操作
トランザクション内訳分析の測定間隔の操作
トランザクション内訳分析の操作(特定時刻の測定情報だけ採取する場合)
トランザクション内訳分析の操作(継続的に測定情報を採取する場合)
トランザクション内訳分析の有効化操作
測定を行う場合、トランザクション内訳分析を有効にする必要があります。以下のように実行してください。
Interstage Java EE管理コンソール > [設定] > [クラスタ名-config] または [server-config] > [監視] 画面で、プロパティ「ssqc-service」を追加し、プロパティ「ssqc-service」の値に「true」を設定します。
また、asadmin setサブコマンドを以下のように実行して、トランザクション内訳分析を有効に設定します。
asadmin set IJServer-config.monitoring-service.module-monitoring-levels.property.ssqc-service=true |
また、Systemwalker Service Quality Coordinatorの設定も必要です。詳しくは、Systemwalker Service Quality Coordinatorのマニュアルを参照してください。
注意
プロパティ「ssqc-service」の名は大文字・小文字を区別します。
プロパティ「ssqc-service」の値は大文字・小文字を区別しません。
true/false以外の値が指定された場合は、省略値のfalseを使用します。
トランザクション内訳分析の有効化操作では、モニタロギングを有効に設定することは不要です。
IJServerクラスタの運用中に設定を変更した場合、設定値はすぐに反映され、指定した間隔経過後に、トランザクション内訳分析はJava EEアプリケーションの動作情報の監視・採取を行います。
コマンド実行前に測定間隔も設定できます。詳細は「トランザクション内訳分析の測定間隔の操作」を参照してください。
トランザクション内訳分析の無効化操作
測定を行わない場合は、トランザクション内訳分析を無効にする必要があります。以下のように実行してください。
Interstage Java EE管理コンソール > [設定] > [クラスタ名-config] または [server-config] > [監視] 画面で、プロパティ「ssqc-service」を追加し、プロパティ「ssqc-service」の値に「false」を設定します。
asadmin setサブコマンドを実行して、トランザクション内訳分析を無効に設定します。
asadmin set IJServer-config.monitoring-service.module-monitoring-levels.property.ssqc-service=false |
注意
トランザクション内訳分析の無効化操作では、モニタロギングを無効に設定することは不要です。
IJServerクラスタの運用中に設定を変更した場合、設定値はすぐに反映され、トランザクション内訳分析は直ちにJava EEアプリケーションの動作情報の監視・採取を止めます。
トランザクション内訳分析の測定間隔の操作
指定した間隔経過後に、トランザクション内訳分析はJava EEアプリケーションの動作情報の監視・採取を行います。以下のように設定してください。
Interstage Java EE管理コンソール > [設定] > [クラスタ名-config] または [server-config] > [監視] 画面で、プロパティ「ssqc-interval」を追加し、かつプロパティ「ssqc-interval」の値に間隔を設定します。
また、asadmin setサブコマンドを実行して、トランザクション内訳分析の測定間隔を設定します。
asadmin set IJServer-config.monitoring-service.module-monitoring-levels.property.ssqc-interval=1000 |
注意
定義項目名「ssqc-interval」は、大文字・小文字を区別します。
「ssqc-interval」の値には、トランザクション内訳分析の測定間隔(単位:回数)を、1~2147483647の整数値で指定します。デフォルト値は1000回です。
範囲外の値が指定された場合は、デフォルト値を使用します。
IJServerクラスタの運用中に設定を変更した場合、設定値はすぐに反映されません。IJServerクラスタを再起動する必要があります。トランザクション内訳分析が有効になる前に設定することを推奨します。
リクエスト先のURLごとに測定されます。初回リクエスト時と、「ssqc-interval」で指定した回数ごとに測定されます。
IJServerクラスタにサーバインスタンスが2つ以上存在する場合、リクエスト回数はプロセスごとにカウントされます。
トランザクション内訳分析の測定を行う際、動作するすべてのトランザクションを対象に情報を収集すると、システムへのオーバヘッドが大きくなるため、一部のデータのみサンプリングするようになります。
サンプリング頻度は、デフォルトでは、1000トランザクションに1回データを収集する頻度(0.1%)になっています。この頻度は、間隔回数として変更できるようになっています。
通常は、デフォルト値「1000」で運用することを推奨します。トランザクションの発生が少なく、トランザクション内訳分析用のデータが、ほとんど収集できない場合に限って割合を変更してください。デフォルト値の1000は、秒間10トランザクションの負荷を想定した値となっています。したがって、デフォルト値を変更する場合は、100秒間に1回程度の割合で情報収集される値を目安に変更してください。
この測定間隔が短すぎる場合、システムへのオーバヘッドが大きくなります。高負荷がかかった場合、ランザクション内訳分析データの一部が欠落した情報になります。
デフォルト値を変更する場合は、Systemwalker Service Quality Coordinatorのマニュアルを参照して適切な値に変更してください。
トランザクション内訳分析の操作(特定時刻の測定情報だけ採取する場合)
トラブル調査などのため、ある特定の時間だけ性能情報を採取したい場合、以下のようにIJServerクラスタの起動後にトランザクション内訳分析を有効にします。
IJServerクラスタの起動
Interstage Java EE管理コンソール、またはasadminコマンドのstart-clusterサブコマンドで、IJServerクラスタを起動します。
トランザクション内訳分析の有効化
Interstage Java EE管理コンソール、またはasadminコマンドのsetサブコマンドで、トランザクション内訳分析を有効に設定します。
トランザクション内訳分析
トランザクション内訳分析機能を利用して、Java EEアプリケーションに対してコンポーネント毎の性能情報計測を行い、ボトルネック箇所を検出します。
トランザクション内訳分析の無効化
Interstage Java EE管理コンソール、またはasadminコマンドのsetサブコマンドで、トランザクション内訳分析を無効に設定します。
2.~4.を繰り返します。
IJServerクラスタの停止
Interstage Java EE管理コンソール、またはasadminコマンドのstop-clusterサブコマンドで、IJServerクラスタを停止します。
トランザクション内訳分析の操作(継続的に測定情報を採取する場合)
継続的に測定情報を採取して性能チューニングの妥当性を検証する場合、以下のようにトランザクション内訳分析を有効に設定した後、IJServerクラスタを起動してください。
トランザクション内訳分析の有効化
Interstage Java EE管理コンソール、またはasadminコマンドのsetサブコマンドで、トランザクション内訳分析を有効に設定します。
IJServerクラスタの起動
Interstage Java EE管理コンソール、またはasadminコマンドのstart-clusterサブコマンドで、IJServerクラスタを起動します。
トランザクション内訳分析
トランザクション内訳分析機能を利用してJava EEアプリケーションに対してコンポーネント毎の性能情報計測を行い、ボトルネック箇所を検出します。
IJServerクラスタの停止
Interstage Java EE管理コンソール、またはasadminコマンドのstop-clusterサブコマンドで、IJServerクラスタを停止します。
2.~4.を繰り返します。
トランザクション内訳分析の無効化
Interstage Java EE管理コンソール、またはasadminコマンドのsetサブコマンドで、トランザクション内訳分析を無効に設定します。
注意
トランザクション内訳分析は、IJServerクラスタの起動中にのみ行われます。
IJServerクラスタの起動・停止とトランザクション内訳分析の有効化・無効化の実行手順は、実際の状況により変更できます。