第4章 Systemwalkerとの連携
4.7 Systemwalker Service Quality Coordinator と連携したトランザクション内訳分析 (Java EE)
Systemwalker Service Quality Coordinatorのトランザクション内訳分析機能については、「J2EE ユーザーズガイド(旧版 互換)」-「Systemwalker Service Quality Coordinatorと連携したトランザクション内訳分析」を参照してください。
4.7 Systemwalker Service Quality Coordinator と連携したトラ ンザクション内訳分析 (Java EE)
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クラスタの起動後にトラ ンザクション内訳分析を有効にします。
1. IJServerクラスタの起動
Interstage Java EE管理コンソール、またはasadminコマンドのstart-clusterサブコマンドで、IJServerクラスタを起動し ます。
2. トランザクション内訳分析の有効化
Interstage Java EE管理コンソール、またはasadminコマンドのsetサブコマンドで、トランザクション内訳分析を有効 に設定します。
3. トランザクション内訳分析
トランザクション内訳分析機能を利用して、Java EEアプリケーションに対してコンポーネント毎の性能情報計測を 行い、ボトルネック箇所を検出します。
4. トランザクション内訳分析の無効化
Interstage Java EE管理コンソール、またはasadminコマンドのsetサブコマンドで、トランザクション内訳分析を無効 に設定します。
5. 2.~4.を繰り返します。
6. IJServerクラスタの停止
7. Interstage Java EE管理コンソール、またはasadminコマンドのstop-clusterサブコマンドで、IJServerクラスタを停止し ます。
トランザクション内訳分析の操作(継続的に測定情報を採取する場合)
継続的に測定情報を採取して性能チューニングの妥当性を検証する場合、以下のようにトランザクション内訳分析を有 効に設定した後、IJServerクラスタを起動してください。
1. トランザクション内訳分析の有効化
Interstage Java EE管理コンソール、またはasadminコマンドのsetサブコマンドで、トランザクション内訳分析を有効
に設定します。
2. IJServerクラスタの起動
Interstage Java EE管理コンソール、またはasadminコマンドのstart-clusterサブコマンドで、IJServerクラスタを起動し ます。
3. トランザクション内訳分析
トランザクション内訳分析機能を利用してJava EEアプリケーションに対してコンポーネント毎の性能情報計測を行 い、ボトルネック箇所を検出します。
4. IJServerクラスタの停止
Interstage Java EE管理コンソール、またはasadminコマンドのstop-clusterサブコマンドで、IJServerクラスタを停止し ます。
5. 2.~4.を繰り返します。
6. トランザクション内訳分析の無効化
7. Interstage Java EE管理コンソール、またはasadminコマンドのsetサブコマンドで、トランザクション内訳分析を無効
に設定します。
注意
・ トランザクション内訳分析は、IJServerクラスタの起動中にのみ行われます。
・ IJServerクラスタの起動・停止とトランザクション内訳分析の有効化・無効化の実行手順は、実際の状況により変更で
きます。