標準ログで使用するログ定義について、以下に説明します。
【アプリケーションがJavaの場合】
〔標準ログのログ定義ファイル格納パス〕 |
【アプリケーションがC言語またはCOBOLの場合】
〔標準ログのログ定義ファイル格納パス〕 |
〔標準ログのログ定義ファイル格納パス〕 |
注意
ログ定義ファイルの修正を行った場合は、ワークユニットの再起動を行ってください。
Interstage Job Workload Serverを同一サーバにインストールしている場合で、以下のログ定義ファイルを修正する場合は、Interstage Job Workload Serverのセットアップで変更した部分は修正しないでください。
/opt/FJSVibs/etc/def/log_inf/logconfExt.xml
C言語アプリケーションを使用できるのは、同期アプリケーション連携実行基盤だけです。
【非同期アプリケーション連携実行基盤を利用する場合】
業務処理開始アプリケーションまたは業務処理実行アプリケーションの動作を開始したときに、定義ファイルの整合性を確認します。そのため、ログ定義ファイルの内容に誤りがある場合、誤りを示すエラーメッセージは、業務処理開始アプリケーションまたは業務処理実行アプリケーションの動作開始後に出力されます。
【同期アプリケーション連携実行基盤を利用する場合】
クライアントアプリケーションまたはサーバアプリケーションの動作を開始したときに、定義ファイルの整合性を確認します。そのため、ログ定義ファイルの内容に誤りがある場合、誤りを示すエラーメッセージは、クライアントアプリケーションまたはサーバアプリケーションの動作開始後に出力されます。
■ログ定義ファイルの修正
インストール時のログ定義ファイルをもとに、記述内容の変更方法について説明します。
なお、定義の変更の詳細については、以下を参照してください。
“Interstage Business Application Server アプリケーション開発ガイド”の“汎用ログ”の“ログ定義ファイルを用いたログ出力”
“Interstage Business Application Server リファレンス”の“ログ定義ファイルリファレンス”
◆定義変更するログを選択する
logComposerタグのnameには、以下の管理名が記述されています。
ログの目的 | 管理名 | 説明 |
---|---|---|
システムログ | system | アプリケーションの稼動状況や、エラー状況を出力します。 |
性能ログ | performance | 特定の利用者による要求処理ごとのWebサーバ、およびアプリケーションサーバでの処理時間を出力します。 |
注) 非同期アプリケーション連携実行基盤においては業務処理開始アプリケーションまたは処理結果キューからのメッセージ受信を行ったユーザのアプリケーションで使用される標準ログの管理名です。
◆標準ログの出力先を変更する
デフォルトの出力先を変更するには、ログ定義ファイル、ログ出力サービス定義ファイルの出力先を変更します。
ログ定義ファイルを変更するには、変更する管理名の定義のparamタグを変更してください。出力先の変更の詳細については、“Interstage Business Application Server アプリケーション開発ガイド”の“汎用ログ”の“ログ定義ファイルを用いたログ出力”の“ログの出力先の設定”を参照してください。
ログ出力サービス定義ファイルを変更するには、変更する出力設定の定義のparamタグを変更してください。出力先の変更の詳細については、“Interstage Business Application Server アプリケーション開発ガイド”の“汎用ログ”の“ログ出力サービス定義ファイルを用いたログ出力”の“ログの出力先の設定”を参照してください。
注意
標準ログとユーザログの出力先を同じ出力先に指定して運用した場合、ログが混在することがあります。
◆標準ログのログ出力レベルを変更する
デフォルトでは、ログ出力レベルは9です。
出力レベルを変更するには、変更する管理名の定義のlevelタグを変更してください。
各ログ定義のログ出力レベルの詳細については、“3.3 標準ログの出力レベル”を参照してください。
◆標準ログのログ出力フォーマットを変更する
デフォルトでは、以下のフォーマットとなります。
コンテキストID メッセージ本文 |
ログ出力フォーマットを変更するには、変更する管理名の定義のmsgFormatタグを変更してください。
フォーマットの詳細については、“3.5 標準ログの基本フォーマット”を参照してください。
◆標準ログの時刻を表示する(Java)
デフォルトでは、アプリケーション連携実行基盤ランタイムが出力する標準ログはコンテナログに出力されます。また非同期アプリケーション連携実行基盤においては業務処理開始アプリケーション、同期アプリケーション連携実行基盤においてはクライアントアプリケーションが、Webアプリケーションなどのワークユニットに配備されているアプリケーションの場合、業務処理開始アプリケーション、またはクライアントアプリケーションが出力する標準ログはコンテナログに出力され、通常のJavaアプリケーションの場合は標準出力に出力されます。
デフォルトでは、標準ログの時刻は出力されない設定になっていますが、ログの出力先がコンテナログの場合、コンテナログのタイムスタンプが自動的に付与されて出力されます。
以下のように、標準ログの出力先がコンテナログではない場合で、かつ標準ログと共に時刻もあわせて出力する場合などは、標準ログで使用するログ定義ファイルを修正する必要があります。
業務処理開始アプリケーションまたはクライアントアプリケーションが通常のJavaアプリケーションの場合
標準ログの出力先をコンテナログやシステムログ(syslog)以外の、ファイルなどに設定する場合
デフォルトでは、時刻を出力するための定義は以下に示すとおり、無効になっています。
<!-- <item name="%d" length="-1" format="yyyy/MM/dd kk:mm:ss.SSS"> </item> --> |
以下の例を参考にして、時刻を出力するための定義を有効にしてください。
<item name="%d" length="-1" format="yyyy/MM/dd kk:mm:ss.SSS"> </item> |
◆標準ログの時刻を表示する(C言語、またはCOBOL)
デフォルトでは、アプリケーション連携実行基盤ランタイムが出力する標準ログはログ出力サービス機能で指定されている出力先のログに出力されます。
デフォルトでは、標準ログの時刻は出力されない設定になっています。標準ログと共に時刻もあわせて出力する場合などは、標準ログで使用するログ定義ファイルを修正する必要があります。
デフォルトでは、時刻を出力するための定義は以下に示すとおり、無効になっています。
<!-- <item name="%d" length="-1" format="yyyy/MM/dd kk:mm:ss.SSS"> </item> --> |
以下の例を参考にして、時刻を出力するための定義を有効にしてください。
<item name="%d" length="-1" format="yyyy/MM/dd kk:mm:ss.SSS"> </item> |