ページの先頭行へ戻る
Interstage Application Server/Interstage Web Server Express チューニングガイド
FUJITSU Software

5.20.3 性能情報の分析

ログファイルに採取した性能情報の分析方法について説明します。

出力情報

モニタ情報ログファイルは、以下のようにCSV形式(カンマ区切りで並べた形式)で出力されます。

D1,D2,D3,D4,D5,・・・

性能情報の項目内容

IJServerクラスタで使用できるモニタロギングでは、IJServerクラスタ起動時からのデータが出力されます。

性能情報中の日時情報には、以下の値が「DD/MM/YYYY hh:mm:ss.SSS」のフォーマットで出力されます。

DD

日を2桁の数字(01~31)で表示します。

MM

月を2桁の数字(01~12)で表示します。

YYYY

年を4桁の数字(0000~9999)で表示します。

hh

時を2桁の数字(00~23)で表示します。

mm

分を2桁の数字(00~59)で表示します。

ss

秒を2桁の数字(00~59)で表示します。

SSS

ミリ秒を3桁の数字(000~999)で表示します。

24/06/2006 01:00:00.200

性能情報中の「ミリ秒」単位には、以下の値が「h:mm:ss.SSS」のフォーマットで出力されます。

h

時を可変桁の数字(0~)で表示します。値が0の場合は「0」と表示します。

mm

分を2桁の数字(00~59)で表示します。

ss

秒を2桁の数字(00~59)で表示します。

SSS

ミリ秒を3桁の数字(000~999)で表示します。

0:00:00.200

性能情報として出力される項目について説明します。各表の項番に書かれているD1、D2、・・・は、CSV形式で出力されるD1、D2、・・・に対応しています。
なお、先頭の出力項目は、必ず当該レコードの性能情報を採取した日時となります。

性能情報を出力するには、asadminコマンドのsetサブコマンドでconfigs.config.monitoring-serviceの定義項目に、出力する情報の監視レベルを指定する必要があります。
各表の監視レベルは、指定した監視レベルによって出力される情報です。監視レベルがHIGHの項目(薄い緑色の行)は、指定された監視レベルがHIGHの場合だけ出力される項目です。それ以外は指定された監視レベルにかかわらず出力される項目です。

性能情報一覧

1) Java VM情報

2) HTTP接続キュー情報

3) HTTPリスナー情報

4) IIOPコネクション情報

5) スレッドプール情報

6) Stateless Session Bean情報

7) Stateful Session Bean情報

8) Message-driven Bean情報

9) Entity Bean情報

10) JDBC接続プール情報

11) トランザクション情報

12) JMS/コネクタ接続プール情報

性能情報の説明

1) Java VM情報

アプリケーションを運用しているJava VMの性能情報です。

項番

項目の内容

採取条件

D1

当該レコードの性能情報を採取した日時

D2

インスタンス名

D3

プロセスID

D4

Java VM稼働時間(単位:ミリ秒)

D5

メモリ割り当てプールの下限値(単位:バイト)

D6

メモリ割り当てプールの上限値(単位:バイト) (注)

D7

メモリ割り当てプールの最小値(単位:バイト)

D8

メモリ割り当てプールの最大値(単位:バイト) (注)

D9

メモリ割り当てプールの現在値(単位:バイト)

D10

Perm領域の上限値(単位:バイト)

D11

Perm領域の最小使用量(単位:バイト)

D12

Perm領域の最大使用量(単位:バイト)

D13

Perm領域の現在使用量(単位:バイト)

D14

ガーベジコレクション発生回数

D15

ガーベジコレクション処理トータル時間(単位: ミリ秒)

注) メモリ割り当てプールの上限値は動的に増減するため、メモリ割り当てプールの上限値をメモリ割り当てプールの最大値が上回る場合があります。

2) HTTP接続キュー情報

HTTPの接続キューの性能情報です。

項番

項目の内容

採取条件

D1

当該レコードの性能情報を採取した日時

D2

インスタンス名

D3

プロセスID

D4

キューがいっぱいになったためにHTTPリクエストを格納できなかった回数

D5

キュー内に現在存在しているHTTPリクエストの数

D6

キュー内HTTPリクエスト数の過去15分間における平均値

D7

キュー内HTTPリクエスト数の過去1分間における平均値

D8

キュー内HTTPリクエスト数の過去5分間における平均値

D9

受け付けられたHTTPリクエストの合計数

D10

キューに格納されたHTTPリクエストの合計数
1つのHTTPリクエストがキュー内に複数回格納される可能性があります。そのため、D9の「受け付けられたHTTPリクエストの合計数」より値が大きくなる場合があります。

D11

キューのID

D12

キューの最大サイズ

D13

キュー内に同時に存在していたHTTPリクエストの最大数

3) HTTPリスナ情報

HTTPリスナーの性能情報です。

項番

項目の内容

採取条件

D1

当該レコードの性能情報を採取した日時(注1)

D2

インスタンス名

D3

プロセスID

D4

各要求プロセッサが受信したバイトの累計値(単位:バイト)

D5

各要求プロセッサが送信したバイトの累計値(単位:バイト)

D6

使用しません

D7

使用しません

D8

使用しません

D9

使用しません

D10

使用しません

D11

使用しません

D12

使用しません

D13

使用しません

D14

使用しません

D15

使用しません

D16

使用しません

D17

使用しません

D18

現在HTTPリスナーが受け付けているHTTPリクエストの数(注2)
この情報が利用不可能な場合は0(注3)

D19

その他の応答コードを含む応答の合計数

D20

HTTPリスナー内に現在存在している要求処理スレッドの数

D21

現在使用されている要求処理スレッドの数

D22

エラー回数の累計値
応答コードが400以上になった場合の回数を表します。

D23

HTTPリスナーに同時に接続されたコネクション数の最大値
この情報が利用不可能な場合は0(注4)

D24

存在可能な未使用要求処理スレッドの最大数

D25

リスナーが作成する要求処理スレッドの最大数

D26

スレッド処理時間の最大値(単位:ミリ秒)

D27

存在可能な未使用要求処理スレッドの最小数

D28

各要求の処理に要した時間の累計値(単位:ミリ秒)

D29

その時点までに処理された要求の合計数

注1) セッションリカバリ機能使用時、対象のIJServerクラスタにSession Registry Clientの制御用HTTPリスナー("__sr-listener")を作成している場合、デフォルトのHTTPリスナー("default")の情報とあわせて、Session Registry Clientの制御用HTTPリスナー("__sr-listener")の情報がログファイルに出力されます。

結果は出力例のように、同時刻での出力が2行となり、1行目がSession Registry Clientの制御用HTTPリスナー("__sr-listener")、2行目がデフォルトのHTTPリスナー("default")の情報となります。

出力例:

22/10/2013 10:19:07.381,ins1,4952,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,64,64,0:00:00.000,2,0:00:00.000,0
22/10/2013 10:19:07.381,ins1,4952,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,64,64,0:00:00.000,2,0:00:00.000,0
22/10/2013 10:20:07.381,ins1,4952,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,64,64,0:00:00.000,2,0:00:00.000,0
22/10/2013 10:20:07.381,ins1,4952,0,7920,4,4,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,2,64,64,0:00:00.094,2,0:00:00.126,4
22/10/2013 10:21:07.381,ins1,4952,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,64,64,0:00:00.000,2,0:00:00.000,0
22/10/2013 10:21:07.381,ins1,4952,88,24617,18,18,0,4,4,0,0,0,0,0,0,0,0,0,16,0,0,2,64,64,0:00:00.094,2,0:00:00.390,22

2) この項目は「HTTP接続キュー」と「要求処理スレッド」にあるHTTPリクエストの数を示しています。このカウントにはキープアライブされている接続も含まれます。

そのため、キープアライブが有効の場合、要求処理スレッドがリクエストの処理を完了して、D21の項目が0になっていてもキープアライブによる接続が残っていれば、本項目はカウントされます。

3) この項目が0となる場合は、以下の可能性があります。

4) この項目が0となる場合は、以下の可能性があります。

要求処理スレッドの平均処理時間の求め方

D28(各要求の処理に要した時間の累計値) ÷ D29(その時点までに処理された要求の合計数)

4) IIOPコネクション情報

ORBへの接続の性能情報です。

項番

項目の内容

採取条件

D1

当該レコードの性能情報を採取した日時

D2

インスタンス名

D3

プロセスID

D4

ORBへの接続のうち、アイドル状態の接続の合計数

D5

ORBへの接続のうち、使用中の接続の合計数

D6

ORBへの接続の下限数

D7

ORBへの接続の上限数

D8

ORBへの接続の最小数

D9

ORBへの接続の最大数

D10

ORBへの接続の合計数 (注)

注) 情報採取のタイミングにより、「D4 + D5 = D10」にならない場合があります。

5) スレッドプール情報

EJBコンテナのスレッドプール(※)に対する性能情報です。スレッドプールごとに情報を出力します。
スレッドプール追加時、モニタ情報を有効にするにはIJServerクラスタの再起動が必要です。

※主にEJBコンテナがスレッド制御を行うアクセスパターンで呼出しが行われた場合に使用されます。
  EJBコンテナのスレッドプールについての詳細については「5.8.1 スレッドプーリング」を参照してください。

項番

項目の内容

採取条件

D1

当該レコードの性能情報を採取した日時

D2

インスタンス名

D3

プロセスID

D4

スレッドプール名

D5

キュー内の要求が処理されるまで待っていた最小待ち時間(単位:ミリ秒)

D6

キュー内の要求が処理されるまで待っていた最大待ち時間(単位:ミリ秒)

D7

キュー内の要求が処理されるまでの平均待ち時間(単位:ミリ秒)

D8

1つの作業の平均完了時間の最短時間(単位:ミリ秒)

D9

1つの作業の平均完了時間の最長時間(単位:ミリ秒)

D10

1つの作業の平均完了時間(単位:ミリ秒)

D11

要求処理スレッドの下限数

D12

要求処理スレッドの上限数

D13

要求処理スレッドの最小数 (注1)

D14

要求処理スレッドの最大数

D15

要求処理スレッドの現在数 (注2)(注3)

D16

利用可能なスレッドの数 (注3)(注4)

D17

作業中状態のスレッドの数 (注3)

D18

その時点までに作業キューに追加された作業項目の合計数 (注5)
なお、1つの要求を実行するために、1つ以上の作業項目が作業キューに追加されます。

D19

キュー内の作業項目の下限数

D20

キュー内の作業項目の上限数

D21

キュー内の作業項目の最小数

D22

キュー内の作業項目の最大数

D23

キュー内の作業項目の数

注1) スレッドプール作成直後は、スレッドが存在しないため、必ず0が出力されます。

2) 情報採取のタイミングにより、「D16 + D17 = D15」にならない場合があります。

3) 性能情報を採取した時点のスレッド数であり、単位時間あたりのスレッド数ではありません。

4) 利用可能なスレッドの数が、見積もり数を超える場合がありますが、一時的な状態であり、問題ありません。

5) 単位時間あたりの作業項目数ではありません。単位時間あたりの作業項目数は、前回採取値との差分を取ることで算出できます。

6) Stateless Session Bean情報

Stateless Session Beanの性能情報です。Beanごとに情報を出力します。

項番

項目の内容

採取条件

D1

当該レコードの性能情報を採取した日時

D2

インスタンス名

D3

プロセスID

D4

Application名

EARファイルパッケージで配備した場合、拡張子を除くアプリケーション名を出力します。

JARファイル単体で配備した場合、拡張子を除くejb-jarファイル名を出力します。

D5

EJBモジュール名

EARファイルパッケージで配備した場合、拡張子を除くejb-jarファイル名を出力します。

D6

Stateless Session Bean名

D7

プール内のインスタンスの最小数

D8

プール内のインスタンスの最大数

D9

プール内のインスタンスの現在数

D10

EJBのcreateメソッドが呼び出された回数

D11

EJBのremoveメソッドが呼び出された回数

  • クライアントアプリケーションがStateless Session Beanに対して、以下のインターフェースのremoveメソッドを呼び出したときに加算されます。

    • javax.ejb.EJBHome

    • javax.ejb.EJBObject

    • javax.ejb.EJBLocalObject

  • EJB3.0から上記インターフェースの継承は不要となり、removeメソッドも呼び出されないため、本項目は加算されません。

  • 「アイドルタイムアウト」でプール内のEnterprise Beanインスタンスを削除しますが、removeメソッドを呼び出して削除するものではないため、本項目は加算されません。

7) Stateful Session Bean情報

Stateful Session Beanの性能情報です。Beanごとに情報を出力します。

項番

項目の内容

採取条件

D1

当該レコードの性能情報を採取した日時

D2

インスタンス名

D3

プロセスID

D4

Application名

EARファイルパッケージで配備した場合、拡張子を除くアプリケーション名を出力します。

JARファイル単体で配備した場合、拡張子を除くejb-jarファイル名を出力します。

D5

EJBモジュール名

EARファイルパッケージで配備した場合、拡張子を除くejb-jarファイル名を出力します。

D6

Stateful Session Bean名

D7

Passivateされたインスタンス数の最小値

D8

Passivateされたインスタンス数の最大値

D9

Passivateされたインスタンス数

D10

キャッシュ内のアイドル状態となっているBeanインスタンスの最小数

D11

キャッシュ内のアイドル状態となっているBeanインスタンスの最大数

D12

キャッシュ内のアイドル状態となっているBeanインスタンスの現在数

D13

EJBのcreateメソッドが呼び出された回数

D14

EJBのremoveメソッドが呼び出された回数

8) Message-driven Bean情報

Message-driven Beanの性能情報です。Beanごとに情報を出力します。

項番

項目の内容

採取条件

D1

当該レコードの性能情報を採取した日時

D2

インスタンス名

D3

プロセスID

D4

Application名

EARファイルパッケージで配備した場合、拡張子を除くアプリケーション名を出力します。

JARファイル単体で配備した場合、拡張子を除くejb-jarファイル名を出力します。

D5

EJBモジュール名

EARファイルパッケージで配備した場合、拡張子を除くejb-jarファイル名を出力します。

D6

Message-driven Bean名

D7

Message-driven Beanに対して受信されたメッセージ数

D8

Message-driven Beanのcreateメソッドが呼び出された回数

D9

Message-driven Beanのremoveメソッドが呼び出された回数

9) Entity Bean情報

Entity Beanの性能情報です。Beanごとに情報を出力します。

項番

項目の内容

採取条件

D1

当該レコードの性能情報を採取した日時

D2

インスタンス名

D3

プロセスID

D4

Application名

EARファイルパッケージで配備した場合、拡張子を除くアプリケーション名を出力します。

JARファイル単体で配備した場合、拡張子を除くejb-jarファイル名を出力します。

D5

EJBモジュール名

EARファイルパッケージで配備した場合、拡張子を除くejb-jarファイル名を出力します。

D6

Entity Bean名

D7

プール内のインスタンスの最小数

D8

プール内のインスタンスの最大数

D9

プール内のインスタンスの現在数

D10

キャッシュ内のアイドル状態となっているBeanインスタンスの最小数

D11

キャッシュ内のアイドル状態となっているBeanインスタンスの最大数

D12

キャッシュ内のアイドル状態となっているBeanインスタンスの現在数

注) 以下のシステムが利用するアプリケーションの性能情報が出力されます。
  __ejb_container_timer_app

10) JDBC接続プール情報

JDBC接続プールの性能情報です。接続プールごとに情報を出力します。
指定したIJServerクラスタに関連付けられたJDBCリソースがひとつもない場合は情報が出力されません。なお、関連付けを行った後は情報が出力されます。
プーリングが無効の場合には一部の情報が出力されません。この場合、"プーリングが無効の場合"の欄が「-」の項目には、必ず0が出力されます。
背景色が薄い緑色の行は、監視レベルがHIGHの項目です。

項番

項目の内容

プーリングが無効の場合

採取条件

D1

当該レコードの性能情報を採取した日時

D2

インスタンス名

D3

プロセスID

D4

JDBC接続プール名

D5

接続要求の平均待機時間(単位:ミリ秒) (注1)

D6

接続要求の最短待機時間(単位:ミリ秒) (注1)

D7

接続要求の最長待機時間(単位:ミリ秒) (注1)

D8

最近受け付けた接続要求の待機時間(単位:ミリ秒) (注1)

D9

プールから獲得した論理接続数 (注1)

D10

作成された物理接続数 (注2)

D11

破棄された物理接続数 (注2)

以下のタイミングに物理接続が破棄されます。

  • プーリングが有効の場合

    • アイドルタイムアウトにより接続が破棄された時

    • 接続検証で失敗して接続が破棄された時
      「すべての障害で」が有効の場合には、接続検証で失敗した接続以外も破棄されます。

  • プーリングが無効の場合

    • アプリケーションでConnectionオブジェクトに対してcloseメソッドが実行された時
      ただし、トランザクション内で接続がキャッシュされている場合は、トランザクションが完了した時

D12

検証に失敗した物理接続数 (注1)(注2)

  • 接続検証の有効時、かつ接続検証に失敗した時

  • 接続検証の有効時、かつ「すべての障害で」の有効時、かつ接続障害と判断された時

D13

使用されていない物理接続の最小数 (注2)

D14

使用されていない物理接続の最大数 (注2)

D15

使用されていない物理接続の現在数 (注2)

D16

認証情報のマッチングに失敗した物理接続数 (注1)(注2)

接続のマッチングに失敗した時

D17

プールに戻された論理接続数 (注1)

D18

認証情報のマッチングに成功した物理接続数 (注1)(注2)

接続のマッチングに成功した時

D19

タイムアウトになった物理接続数 (注1)(注2)

接続要求のタイムアウト発生時(最大待ち時間 > 0)

D20

使用中の物理接続の最小数 (注2)

D21

使用中の物理接続の最大数 (注2)

D22

使用中の物理接続の現在数 (注2)

D23

待機しているキュー内の接続要求の数

プール内の接続数が最大値に達し、全接続が使用中の時 (注3)

D24

リークが発生した接続の数(注1)

接続リーク発生時

1) この項目は、監視レベルをHIGHに設定した場合のみ出力されます。

2) この物理接続は、JDBCドライバ側から取得した接続です。通常、JDBCドライバ側から取得した接続は物理接続となります。JDBCドライバ側のプーリング機能を利用する場合、実際の物理接続は、JDBCドライバ側でキャッシュされるため、JDBCドライバ側から取得した接続は実際の物理接続ではない場合もあります。

3) プーリングが無効のときに、接続プールから取得する接続は最大プールサイズの制限がありません。そのため、プーリングが無効の場合、プール内の接続数は最大値に達しません。


JDBCリソースの接続を取得する場合でも監視情報に反映されない場合があります。詳細は「5.19.1 注意事項」を参照してください。

11) トランザクション情報

トランザクションの性能情報です。

項番

項目の内容

採取条件

D1

当該レコードの性能情報を採取した日時

D2

インスタンス名

D3

プロセスID

D4

ロールバックされたトランザクションの数

D5

コミットされたトランザクションの数

D6

アクティブなトランザクションの数

12) JMS/コネクタ接続プール情報

JMS接続ファクトリまたはコネクタ接続プールの性能情報です。プールごとに情報を出力します。
コネクタ接続プールの場合、指定したIJServerクラスタに関連付けられたコネクタリソースがひとつもない場合は情報が出力されません。なお、関連付けを行った後は情報が出力されます。
背景色が薄い緑色の行は、監視レベルがHIGHの項目です。

項番

項目の内容

採取条件

D1

当該レコードの性能情報を採取した日時

D2

インスタンス名

D3

プロセスID

D4

コネクタ接続プール名

D5

接続要求の平均待機時間(単位:ミリ秒) (注)

D6

接続要求の最短待機時間(単位:ミリ秒) (注)

D7

接続要求の最長待機時間(単位:ミリ秒) (注)

D8

最近受け付けた接続要求の待機時間(単位:ミリ秒) (注)

D9

プールから獲得した論理接続数 (注)

D10

作成された物理接続数

D11

破棄された物理接続数

アイドルタイムアウトにより接続が破棄された時

D12

検証に失敗した物理接続数 (注)

  • 接続検証の有効時、かつ接続検証に失敗した時

  • 接続検証の有効時、かつ「すべての障害で」の有効時、かつ接続障害と判断された時

D13

使用されていない物理接続の最小数

D14

使用されていない物理接続の最大数

D15

使用されていない物理接続の現在数

D16

認証情報のマッチングに失敗した物理接続数 (注)

接続のマッチングに失敗した時

D17

プールに戻された論理接続数 (注)

D18

認証情報のマッチングに成功した物理接続数 (注)

接続のマッチングに成功した時

D19

タイムアウトになった物理接続数 (注)

接続要求のタイムアウト発生時(最大待ち時間 > 0)

D20

使用中の物理接続の最小数

D21

使用中の物理接続の最大数

D22

使用中の物理接続の現在数

D23

待機しているキュー内の接続要求の数

プール内の接続数が最大値に達し、全接続が使用中の時

D24

採取対象外の項目です。 (注)

注) この項目は、監視レベルをHIGHに設定した場合のみ出力されます。


JMSまたはコネクタリソースの接続を取得する場合でも監視情報に反映されない場合があります。詳細は「5.19.1 注意事項」を参照してください。