1.2.8. TPシステム

1.2.8.1. アプリケーション障害発生時に必要となる可能性が高いログ
${INSTANCE_ROOT}/logs/tpsystem/tpmmgr.log
TPモニタ・マネージャに関する動作がロギングされるファイルです。ファイルの切り替えが発生すると、tpmmgr.log, tpmmgr.log.1, tpmmgr.log.2という名前(デフォルトで最大3個)のファイルが作成されます。
${INSTANCE_ROOT}/logs/tpsystem配下の次のファイル
- history.act,history.act.1, history.act.2・・・ : サーバアプリケーションの起動、停止履歴
- sysmsg.trc, sysmsg.trc.1, sysmsg.trc.2・・・ : APサーバへの接続履歴
.<数字>が付くファイルはそれぞれのバックアップファイルです。10000行(既定値)を超えるかTPシステム起動時にファイルが切り替わります。10世代(既定値)を超えるとファイルは上書きされますので、障害発生時はファイルが上書きされる前に採取してください。
${INSTANCE_ROOT}/logs/tpsystem/<アプリケーショングループ名>/<プロセスグループ名>配下の全ファイル
アプリケーショングループとプロセスグループ別にサーバアプリケーションのログファイルが出力されます。
1.2.8.2. 障害の解析方法

WebOTXで障害を検出した場合は、イベントログ(UNIXの場合はsyslog)に障害情報を出力します。 障害が起きた場合は、まずイベントログを調査して下さい。

サーバアプリケーションが異常終了した場合は、アプリケーションログを確認して下さい。

WebOTXサーバを構成するプロセス群の起動、停止情報はhistory.actというファイルに格納されています。 何らかのプロセス障害、例えばWebOTXの起動に失敗したり、アプリケーショングループの停止に失敗した場合は、history.actを確認して下さい。

1.2.8.3. 標準で採取される障害情報
イベントログ

イベントログ(UNIXの場合はsyslog)への出力形式は以下の通りです。

アプリケーションログ

サーバアプリケーションで障害が発生した場合、アプリケーションログを確認してください。

${INSTANCE_ROOT}/logs/tpsystem/<アプリケーショングループ名>/<プロセスグループ名>/<プロセスグループ名>.<プロセスID>.log
history.act

history.actファイルの所在は以下の通りです。

${INSTANCE_ROOT}/logs/tpsystem/history.act
historyは既定値では10世代まで出力されます。ファイル名は次のようになります。
history.act, history.act.1, history.act.2 ・・・
1.2.8.4. 各コンポーネントにおける障害解析
サーバアプリケーションのログ採取

サーバで発生した障害はWindowsのイベントログ、UNIXのsyslogとWebOTX サーバのトレースファイルに出力されます。 イベントログの参照などの操作に関しては、Windows のマニュアルを参照してください。 障害の詳しい情報を採取したい場合は、トレースログを取得することにより詳細なデータを取得することができます。 トレースログはログファイルに出力されます。

プロセスグループからトレース用APIを呼び出すと、同じファイルに出力されます。

プロセスグループのトレース出力に関する設定は、統合運用管理ツールで指定します。

  1. 統合運用管理ツールを起動します
  2. トレースを設定するプロセスグループを選択します
  3. [トレース設定]タブを選択します
  4. 「ファイルサイズ」、「トレースレベル」を設定します
  5. 設定後すぐにトレースファイルが作成されます
アプリケーションログの見方

アプリケーションログの例を以下に示し、その見方を説明します。

                       :
2017-10-05 15:19:24,817|1442 002: Information: LID=[AJPLISTENER0002] TxID=[AAAAAB] SPAptr=[0x0000000000000000] UCAptr=[0x000000000172F2A8]
2017-10-05 15:19:24,817|1442 002:  Input message size=225bytes
2017-10-05 15:19:25,463|1442 002:  Output message size=1265bytes
2017-10-05 15:19:25,463|1442 002: Invocation completed, endkey=0 txendflag=0
   (1)         (2)      (3)  (4)                (5)
ワトソンログ採取

Windows OS においてアプリケーションで障害が発生した場合、障害解析にワトソンログが必要となる場合があります。例外時にワトソンログを出力させるには、統合運用管理ツールからTPシステムの[例外ハンドル]タブを選択し、「WebOTXで例外処理を行う」のチェックを外してTPシステムを再起動してください。

ただし、この設定を変更すると以下の影響があるため注意が必要です。
・WebOTXが例外をキャッチしなくなり、例外時にはオペレーションを閉塞させずに、プロセスが即停止します。 該当プロセスで実行中の処理があれば、その処理は異常終了します。
・TPシステムの属性の「プロセス障害時の再起動」の値が2以上の値になっていれば、 その回数までは例外して落ちたプロセスは自動再起動されます。 ただし、OSの設定やワトソン博士の設定によっては例外時に何らかのダイアログが出てしまうことがあります。 その場合はダイアログを閉じるまでプロセスが終了せず再起動もされません。

また、OSの設定でワトソンログを採取する設定になっていない場合はコマンドプロンプトで 「drwtsn32 -i」を実行してください。 「-i」を指定すると、必要な変更がレジストリに対して行われます。

TPモニタ

TPモニタのログ出力の設定方法は次の通りです。

--運用管理コマンドの場合--
以下のコマンドを実行してドメインを再起動します。

otxadmin> set tpsystem.collectTpmonitorTrace=true
otxadmin> set tpsystem.tpmonitorTraceSize=100000

(collectTpmonitorTrace は true で採取有り、false で採取無しで、既定値はfalse)
(tpmonitorTraceSize は ログの最大行数で、既定値は100,000)

--統合運用管理ツールの場合--
以下の属性を設定してドメインを再起動します。

  1. 統合運用管理ツールを起動します
  2. トレースを採取するTPシステムを選択します
  3. [システム情報]タブを選択します
  4. 「TPモニタのログを採取する」、「TPモニタのログの最大ライン数」を設定します

ドメイン再起動後、以下のログが出力されます。

${INSTANCE_ROOT}/logs/tpsystem/tpmonitor.trc
TPA

TPAのログ出力の設定方法は次の通りです。

--運用管理コマンドの場合--
以下のコマンドを実行してドメインを再起動します。

otxadmin> set tpsystem.collectTpaTrace=true
otxadmin> set tpsystem.tpaTraceSize=100000

(collectTpaTrace は true で採取有り、false で採取無しで、既定値はfalse)
(tpaTraceSize は ログの最大行数で、既定値は100,000)

--統合運用管理ツールの場合--
以下の属性を設定してドメインを再起動します。

  1. 統合運用管理ツールを起動します
  2. トレースを採取するTPシステムを選択します
  3. [システム情報]タブを選択します
  4. 「TPAのログを採取する」、「TPAのログの最大ライン数」を設定します

ドメイン再起動後、以下のログが出力されます。

${INSTANCE_ROOT}/logs/tpsystem/oltpad.trc
IIOPリスナ

IIOPリスナは二つのトレースファイルから構成されます。 一つは通信管理部分。 もう一つは振り分け部分になります。

どちらのトレースも詳細な通信ログを採取するため、性能劣化が発生します。トレースの採取が終わりましたら、設定は元に戻してください。

AJPリスナ

AJPリスナは二つのトレースファイルから構成されます。 一つは通信管理部分。 もう一つは振り分け部分になります。

どちらのトレースも詳細な通信ログを採取するため、性能劣化が発生します。トレースの採取が終わりましたら、設定は元に戻してください。

管理TPP

トレースを採取する場合は、該当TPシステムのカタログディレクトリにあるwosystpp.pedファイルに、以下の行を追加します。

ARGS -OltpTplibTrace F=<filename>,<line>

(filename はトレースファイル名(フルパス)で、採取時は必ず指定する)
(line は行数で、採取時は必ず指定する)