ページの先頭行へ戻る
Interstage Application Server V12.0.0 Java EE 7 設計・構築・運用ガイド
FUJITSU Software

4.17.4 IIOPアクセスログ

ファイル名

iiop_access.log

ログファイルの出力先

Interstage Java EE 7 DASサービス

[Java EE 7共通ディレクトリ]\domains\domain1\logs\iiop

[Java EE 7共通ディレクトリ]/domains/domain1/logs/iiop

IJServerクラスタ

[Java EE 7共通ディレクトリ]\nodes\localhost-domain1\<サーバーインスタンス名>\logs\iiop

[Java EE 7共通ディレクトリ]/nodes/localhost-domain1/<サーバーインスタンス名>/logs/iiop

ログファイルの出力先の変更

IIOPアクセスログのログ出力先ディレクトリは変更可能です。変更方法については、「設定方法」を参照してください。

出力内容

IIOP通信の通信内容が出力されます。

仕様

注意

  • IJServerクラスタプロセス内の呼出しの場合は、IJServerクラスタに配備したEJBアプリケーションをローカルに呼び出す場合のように、IIOP通信が使用されないため、アクセスログは出力されません。

  • クライアントマシン上では、Java EEアプリケーションクライアントのIIOP通信情報はアクセスログに出力されません。

設定方法

IIOPサービスの定義項目のプロパティで、以下の項目が設定できます。IIOPサービスの定義項目については、「8.8.4 IIOPサービスの定義項目」を参照してください。

出力モードの設定

IIOPサービスのORB定義の追加プロパティに、以下を設定します。

プロパティ名

説明

プロパティ値

省略値

ISJE7LogIiopAccessMode

IIOPアクセスログの出力モードを設定します。

  • ACCESSモード
    access

  • TRACEモード
    trace

  • NONEモード
    none

access

asadminコマンドを使用して追加プロパティに出力モードを設定する場合、以下のように設定します。

C:\Interstage\F3FMisje7\glassfish\bin\asadmin set IJServer001.iiop-service.orb.property.ISJE7LogIiopAccessMode=trace

/opt/FJSVisje7/glassfish/bin/asadmin set IJServer001.iiop-service.orb.property.ISJE7LogIiopAccessMode=trace

注意

  • プロパティを設定しない場合、省略値で動作します。

  • プロパティの設定値を変更した場合は、変更対象のIJServerクラスタまたはInterstage Java EE 7 DASサービスを再起動し、サーバーログにエラーメッセージが出力されていないことを確認してください。

出力フォーマット

"[<日付> <時刻>]" "<スレッドID(スレッド名)>" "<メッセージ>"
<日付>
日(2桁10進数)/月(3文字英字)/年(4桁10進数)
<時刻>
時間(2桁10進数):分(2桁10進数):秒(2桁10進数).ミリ秒(3桁10進数) (GMTとの時差)
<スレッドID(スレッド名)>
ID(10進数)(名(英数字))
<メッセージ>

IIOP通信に関する情報を表示します。以下に示すメッセージフォーマットで出力します。

メッセージ送信/受信の場合
<送受信>(<役割>) <メッセージ種別> <補足情報>
<送受信>

IN:受信による通信を表します。

OUT:送信による通信を表します。

<役割>

CL:クライアント機能として動作していることを表します。

SV:サーバ機能として動作していることを表します。

<メッセージ種別>

以下のいずれかが出力されます。

  • Request

  • Reply

  • Fragment

  • Other

<補足情報>

メッセージ種別ごとの補足情報です。詳細は「メッセージ種別ごとの補足情報」を参照してください。

メッセージ送信/受信以外の場合
<事象名> <補足情報>
<事象名>

以下が出力されます。

  • connect

  • connect_close

  • close_resp_info

  • app_begin

  • app_end

  • reply_status

<補足情報>

事象名ごとの補足情報です。詳細は「事象名ごとの補足情報」を参照してください。

メッセージ種別ごとの補足情報
Request

メッセージフォーマットの<送受信>がINの場合

(request_id=<リクエストID>, client=<クライアント情報>, server=<サーバ情報>, more=<フラグメント情報>)

メッセージフォーマットの<送受信>がOUTの場合

(request_id=<リクエストID>, client=<クライアント情報>, server=<サーバ情報>, more=<フラグメント情報>, intf_id=<インタフェースリポジトリID>, operation=<メソッド名>, oneway=<oneway呼出し>)
リクエストID

Requestメッセージ送信時のリクエストIDです。

リクエストIDが表示できない場合は、「-」を表示します。

クライアント情報

Requestメッセージ要求元のIPアドレスおよびポート番号です。

サーバ情報

Requestメッセージ要求先のIPアドレスおよびポート番号です。

フラグメント情報

false:Requestメッセージが分割されていないことを表します。

true:Requestメッセージが分割され、後続のFragmentメッセージが存在することを表します。

インタフェースリポジトリID

アプリケーションを識別する情報です。

CORBA規約で定められているインタフェースリポジトリIDに相当します。

メソッド名

クライアントアプリケーションが呼び出したサーバアプリケーションのメソッド名です。

oneway呼出し

Requestがサーバからの応答を期待しないonewayメソッドであるかを表します。

true:onewayメソッドであることを表します。

false:onewayメソッドでないことを表します。

Reply

メッセージフォーマットの<送受信>がINの場合

(request_id=<リクエストID>, client=<クライアント情報>, server=<サーバ情報>, more=<フラグメント情報>)

メッセージフォーマットの<送受信>がOUTの場合

<リプライステータス> <経過時間> (request_id=<リクエストID>, client=<クライアント情報>, server=<サーバ情報>, more=<フラグメント情報>, intf_id=<インタフェースリポジトリID>, operation=<メソッド名>, [excep_id=<例外のリポジトリID>], [minor=<SYSTEM例外のマイナーコード>])
リプライステータス

以下のいずれかが表示されます。

リプライステータス

意味

NO_EXCEPTION

正常復帰します。

USER_EXCEPTION

ユーザ例外が発生しました。

SYSTEM_EXCEPTION

システム例外が発生しました。

LOCATION_FORWARD

適切な要求先の情報を返却します。

LOCATION_FORWARD_PERM

好ましい要求先の情報を返却します。

NEEDS_ADDRESSING_MODE

要求方法の変更を通知します。


経過時間

サーバが要求を受信した後、実際に要求処理を開始してからクライアントに応答を返すまでの経過時間を表示します。サーバからクライアントに返すメッセージが、複数のフラグメントに分割される場合は、分割した最初のメッセージを返すまでの経過時間を表示します。単位はミリ秒です。

リクエストID

Replyメッセージに対応するRequestメッセージのリクエストIDです。

リクエストIDが表示できない場合は、「-」を表示します。

クライアント情報

Replyメッセージ応答先のIPアドレスおよびポート番号です。

サーバ情報

Replyメッセージ応答元のIPアドレスおよびポート番号です。

フラグメント情報

false:Replyメッセージが分割されていないことを表示します。

true:Replyメッセージが分割され、後続のFragmentメッセージが存在することを表します。

インタフェースリポジトリID

アプリケーションを識別する情報です。

CORBA規約で定められているインタフェースリポジトリIDに相当します。

インタフェースリポジトリIDが表示できない場合は、「-」を表示します。

メソッド名

クライアントアプリケーションが呼び出したサーバアプリケーションのメソッド名です。

例外のリポジトリID

リプライステータスがUSER_EXCEPTIONまたはSYSTEM_EXCEPTIONの場合に、例外のリポジトリIDを表示します。リプライステータスがそれ以外の場合は表示されません。

SYSTEM例外のマイナーコード

リプライステータスがSYSTEM_EXCEPTIONの場合に、例外のマイナーコードを10進数で表示します。リプライステータスがそれ以外の場合は表示されません。

Fragment
(request_id=<リクエストID>, client=<クライアント情報>, server=<サーバ情報>, more=<フラグメント情報>)
リクエストID

Fragmentメッセージ要求時のリクエストIDです。

クライアント情報

Fragmentメッセージの要求元または応答先の、IPアドレスおよびポート番号です。

サーバ情報

Fragmentメッセージの要求先または応答元の、IPアドレスおよびポート番号です。

フラグメント情報

false:後続のFragmentメッセージが存在しないことを表します。

true:後続のFragmentメッセージが存在することを表します。

Other
<メッセージタイプ> ([reply_status=<リプライステータス>], [request_id=<リクエストID>], client=<クライアント情報>, server=<サーバ情報>, [more=<フラグメント情報>],  [excep_id=<例外のリポジトリID>], [minor=<SYSTEM例外のマイナーコード>])
メッセージタイプ

以下のいずれかが表示されます。

  • CancelRequest

  • LocateRequest

  • LocateReply

  • CloseConnection

  • MessageError

リプライステータス(注)

メッセージ種別がLocateReplyの場合にだけ、以下の情報が出力されます。

リプライステータス

意味

UNKNOWN_OBJECT

不正な要求です。

OBJECT_HERE

適切な要求です。

OBJECT_FORWARD

適切な要求先の情報を返却します。

OBJECT_FORWARD_PERM

好ましい要求先の情報を返却します。

LOC_SYSTEM_EXCEPTION

システム例外が発生しました。

LOC_NEEDS_ADDRESSING_MODE

要求方法の変更を通知します。


リクエストID(注)

メッセージ要求時のリクエストIDです。

リクエストIDが表示できない場合は、「-」を表示します。

クライアント情報

メッセージの要求元または応答先の、IPアドレスおよびポート番号です。

サーバ情報

メッセージの要求先または応答元の、IPアドレスおよびポート番号です。

フラグメント情報(注)

false:後続のFragmentメッセージが存在しないことを表します。

true:後続のFragmentメッセージが存在することを表します。

例外のリポジトリID(注)

メッセージタイプがLocateReplyで、リプライステータスがLOC_SYSTEM_EXCEPTIONの場合にだけ、例外のリポジトリIDを表示します。

SYSTEM例外のマイナーコード(注)

メッセージタイプがLocateReplyで、リプライステータスがLOC_SYSTEM_EXCEPTIONの場合にだけ、例外のマイナーコードを10進数で表示します。


注) 表示する情報がない場合は、アクセスログに出力されません。


事象名ごとの補足情報
connect
(client=<クライアント情報>, server=<サーバ情報>)
クライアント情報

コネクション接続元のIPアドレスおよびポート番号です。

サーバ情報

コネクション接続先のIPアドレスおよびポート番号です。

connect_close
(client=<クライアント情報>, server=<サーバ情報>)
クライアント情報

コネクション接続元のIPアドレスおよびポート番号です。

サーバ情報

コネクション接続先のIPアドレスおよびポート番号です。

close_resp_info
(request_id=<リクエストID>, client=<クライアント情報>, server=<サーバ情報>, [intf_id=<インタフェースリポジトリID>], [operation=<メソッド名>])
リクエストID

破棄されたメッセージのリクエストIDです。

クライアント情報

コネクション接続元のIPアドレスおよびポート番号です。

サーバ情報

コネクション接続先のIPアドレスおよびポート番号です。

インタフェースリポジトリID(注)

アプリケーションを識別する情報です。

CORBA規約で定められているインタフェースリポジトリIDに相当します。

メソッド名(注)

クライアントアプリケーションが呼び出したサーバアプリケーションのメソッド名です。


注) 表示する情報がない場合は、アクセスログに出力されません。


app_begin
(request_id=<リクエストID>, client=<クライアント情報>, server=<サーバ情報>, intf_id=<インタフェースリポジトリID>, operation=<メソッド名>)
リクエストID

RequestメッセージのリクエストIDです。

クライアント情報

コネクション接続元のIPアドレスおよびポート番号です。

サーバ情報

コネクション接続先のIPアドレスおよびポート番号です。

インタフェースリポジトリID

アプリケーションを識別する情報です。

CORBA規約で定められているインタフェースリポジトリIDに相当します。

メソッド名

クライアントアプリケーションが呼び出したサーバアプリケーションのメソッド名です。

app_end
<経過時間> (request_id=<リクエストID>, client=<クライアント情報>, server=<サーバ情報>, intf_id=<インタフェースリポジトリID>, operation=<メソッド名>)
経過時間

アプリケーションの処理時間です。単位はミリ秒です。

リクエストID

RequestメッセージのリクエストIDです。

クライアント情報

コネクション接続元のIPアドレスおよびポート番号です。

サーバ情報

コネクション接続先のIPアドレスおよびポート番号です。

インタフェースリポジトリID

アプリケーションを識別する情報です。

CORBA規約で定められているインタフェースリポジトリIDに相当します。

メソッド名

クライアントアプリケーションが呼び出したサーバアプリケーションのメソッド名です。

reply_status
<メッセージ種別> <リプライステータス> (request_id=<リクエストID>, client=<クライアント情報>, server=<サーバ情報>, [operation=<メソッド名>], [excep_id=<例外のリポジトリID>], [minor=<SYSTEM例外のマイナーコード>])
メッセージ種別

ReplyまたはLocateReplyが表示されます。

リプライステータス

メッセージ種別に従い、以下のステータスが表示されます。

メッセージ種別

ステータス

Reply

NO_EXCEPTION

USER_EXCEPTION

SYSTEM_EXCEPTION

LOCATION_FORWARD

LOCATION_FORWARD_PERM

NEEDS_ADDRESSING_MODE

LocateReply

UNKNOWN_OBJECT

OBJECT_HERE

OBJECT_FORWARD

OBJECT_FORWARD_PERM

LOC_SYSTEM_EXCEPTION

LOC_NEEDS_ADDRESSING_MODE

リクエストID

RequestまたはLocateRequestメッセージのリクエストIDです。

クライアント情報

メッセージ送信先のIPアドレスおよびポート番号です。

サーバ情報

メッセージ送信元のIPアドレスおよびポート番号です。

メソッド名(注)

クライアントアプリケーションが呼び出したサーバアプリケーションのメソッド名です。

例外のリポジトリID(注)

リプライステータスがUSER_EXCEPTION、SYSTEM_EXCEPTIONまたはLOC_SYSTEM_EXCEPTIONの場合に、例外のリポジトリIDを表示します。リプライステータスがそれ以外の場合には表示されません。

SYSTEM例外のマイナーコード(注)

リプライステータスがSYSTEM_EXCEPTIONまたはLOC_SYSTEM_EXCEPTIONの場合に、例外のマイナーコードを10進数で表示します。リプライステータスがそれ以外の場合には表示されません。


注) 表示する情報がない場合は、アクセスログに出力されません。


出力例

クライアントがRequestメッセージを要求した場合

"[06/Nov/2015 18:12:25.255 +0900]" "71(p: thread-pool-1; w: 5)" "OUT(CL) Request (request_id=8, client=127.0.0.1:46086, server=127.0.0.1.144:25700, more=false, intf_id=RMI:test._LogModeEJBRemote_Remote:0000000000000000, operation=func, oneway=false)"

サーバがReplyメッセージを応答した場合

"[06/Nov/2015 18:12:25.323 +0900]" "43(p: ejbAppTarget; w: 4)" "OUT(SV) Reply NO_EXCEPTION 46 (request_id=8, client=127.0.0.1:46086, server=127.0.0.1:25700, more=false, intf_id=RMI:test._LogModeEJBRemote_Remote:0000000000000000, operation=func)"