Cosminexus V9 アプリケーションサーバ 機能解説 互換編
ここでは,トラブルシューティングの資料を取得するための設定方法について説明します。
トラブルシューティングに必要な資料のうち,一部の資料は,運用を開始する前に資料取得のための設定をしておく必要があります。例えば,OSの統計情報,ユーザダンプ(Windowsの場合)またはcoreダンプ(UNIXの場合),JavaVMのGCのログなどは,事前に取得のための設定をしておかないと,取得できません。これらの資料はトラブルシューティングで必要となるため,取得することをお勧めします。
デフォルトの設定で取得できるようになっている資料については,特に設定は不要ですが,ログの出力先やサイズなどを変更したい場合には,ユーザ定義ファイルを編集して,設定を変更してください。
トラブルシューティングの資料取得のための設定を次の表に示します。
表3-30 トラブルシューティングの資料取得のための設定(サーブレットエンジンモードの場合)
資料の種類 | 資料取得のための設定 | 設定の要否 | 設定方法の参照先 |
---|---|---|---|
性能解析トレースファイル | 事前に,取得のための設定をしておく必要はありません。日常的なシステム運用の作業で,cprfedコマンドを実行するときに取得条件などを指定します。性能解析トレースファイルの取得については,「3.8.4 システムの処理性能の解析」を参照してください。 | × | − |
Webコンテナサーバのログ | Webコンテナサーバ用のusrconf.cfgとusrconf.propertiesで,ログの出力レベル,サイズ,面数などを設定します。 | △ | (2) |
リダイレクタのログ | mod_jk.conf(HTTP Serverの場合)またはisapi_redirect.conf(Microsoft IISの場合)で,ログの出力レベル,サイズ,面数などを設定します。 | △ | (3) |
TPBrokerのトレースファイル | Webコンテナサーバ用のusrconf.cfgとusrconf.propertiesで,トレースファイルの出力先や面数などを設定します。 | △ | (4) |
DABroker Libraryのログ | 環境設定ユティリティまたはDABroker Library動作環境定義ファイルで,ログファイルサイズなどを設定します。 | △ | (5) |
OSの統計情報 | Windowsの場合,Windowsのシステムモニタでシステムリソースのパフォーマンスデータ取得の設定をします。 | ○ | (6) |
ユーザダンプ | Windowsの場合,ワトソン博士または環境変数(CJMEMDUMP_PATH)で,ユーザダンプ取得の設定をします。 | ○ | (7) |
coreダンプ | UNIXの場合,usrconf.cfgやシェルコマンドで,coreファイル取得の設定をします。 | ○ | (8) |
JavaVMの資料 | Webコンテナサーバ用のusrconf.cfgで,JavaVMのスレッドダンプやJavaVMログ(JavaVMログファイル)の出力方法や出力内容などの設定をします。 | ○ | (9) |
Webアプリケーションのユーザログ | Webコンテナサーバ用のusrconf.propertiesで,ロガーやハンドラの設定,ログの出力レベル,サイズ,面数などを設定します。また,web.policyで,セキュリティポリシーを設定します。 設定方法は,J2EEアプリケーションの場合と同じです。Webアプリケーションのユーザログ出力については,マニュアル「アプリケーションサーバ 機能解説 拡張編」の「9. アプリケーションのユーザログ出力」を参照してください。ただし,サーブレットエンジンモードの場合は,簡易構築定義ファイルではなく,Webコンテナサーバ用のusrconf.propertiesで設定します。設定時には,簡易構築定義ファイルで設定するパラメタを,Webコンテナサーバ用のusrconf.propertiesのキーに読み替えてください。Webコンテナサーバ用のusrconf.propertiesについては,「usrconf.properties(Webコンテナサーバ用ユーザプロパティファイル)」を参照してください。 |
○ | (10) |
なお,次のログはログ出力先を変更できません。
Webコンテナサーバのログの出力先,ログサイズ,ログレベルの変更について説明します。変更できる項目と,項目に対応するユーザ定義ファイルとキーを次の表に示します。
表3-31 Webコンテナサーバのログ取得の設定項目
項目 | 対応するユーザ定義ファイルとキー |
---|---|
ログの出力先 | usrconf.cfgのweb.server.log.directoryキー |
ログサイズ | usrconf.propertiesのejbserver.logger.channels.define.<チャネル名>.filenumキー usrconf.propertiesのejbserver.logger.channels.define.<チャネル名>.filesizeキー |
ログレベル | usrconf.propertiesのejbserver.logger.enabled.*キー |
ファイルおよびキーについては,「3.11 Webコンテナサーバで使用するファイル」を参照してください。
デフォルトのログ出力先を次に示します。
ログの出力先を変更する場合は,usrconf.cfgのweb.server.log.directoryキーでログの出力先ディレクトリを指定します。
ログサイズを変更する場合は,usrconf.propertiesで,ログファイルの面数,およびログファイル1面当たりの最大サイズを設定します。
ログレベルは,ログの重要度を表します。ログレベルには,「Error」,「Warning」,「Information」,「Debug」の四つがあります。ログレベルを設定すると,設定したレベルのログが出力されます。デフォルトでは,Errorレベルのログだけが取得されます。通常はデフォルトのまま利用してください。
ログレベルは,Webコンテナサーバ用のusrconf.propertiesのejbserver.logger.enabled.*キーで設定します。
ejbserver.logger.enabled.*=<レベル名>
レベル名には,「Error」,「Warning」,「Information」,「Debug」の文字列を一つ,または複数設定します。複数設定する場合には,レベル名の文字列の間をコンマ(,)で区切ります。
リダイレクタの出力するログの出力先やログ出力レベルなどの変更について説明します。なお,ファイルの詳細およびキーの詳細については,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「9.2 isapi_redirect.conf(Microsoft IIS用リダイレクタ動作定義ファイル)」を参照してください。
リダイレクタが出力するログは,メッセージログと保守用トレースログの二つに分けて出力されます。メッセージログには,障害発生時のログなどのメッセージが出力されます。保守用トレースログには,HTTPリクエストを受信し,レスポンスを送信するまでのトレース情報が出力されます。
保守用トレースログのログサイズは,見積もりの計算式に従い,障害発生時から障害を検知しログを収集するまで保持されるサイズにカスタマイズすることをお勧めします。
HTTP Serverを使用している場合は,mod_jk.confでリダイレクタのログ取得の設定を変更できます。なお,UNIXの場合,設定を変更できるのは,root権限(Component Container管理者を設定していない場合),またはComponent Container管理者の権限(Component Container管理者を設定している場合)を持つユーザです。
変更した設定を有効にする方法について,OSごとに説明します。
変更できる設定項目と,項目に対応するユーザ定義ファイルとキーを次の表に示します。
表3-32 HTTP Serverでのリダイレクタのログ取得の設定項目(サーブレットエンジンモードの場合)
項目 | mod_jk.confのキー |
---|---|
メッセージログ,保守用トレースログのログ出力レベル | JkLogLevel |
メッセージログ出力先 | JkLogFileDir |
メッセージログファイルサイズ | JkLogFileSize |
メッセージログファイル面数 | JkLogFileNum |
メッセージログファイル名のプリフィックス | JkLogFilePrefix |
保守用トレースログ出力の有無 | JkTraceLog |
保守用トレースログ出力先 | JkTraceLogFileDir※ |
保守用トレースログファイルサイズ | JkTraceLogFileSize |
保守用トレースログファイル面数 | JkTraceLogFileNum |
保守用トレースログファイル名のプリフィックス | JkTrcaeLogFilePrefix※ |
注※ 保守用トレースログの出力先とプリフィックスには,同じ値を指定しないでください。同じ値を指定した場合は,リダイレクタが動作しません。
Microsoft IISを使用している場合は,isapi_redirect.confでリダイレクタのログ取得の設定を変更できます。
変更したリダイレクタのログ取得の設定を有効にする方法は,Microsoft IISのバージョンによって異なります。
ファイルサイズまたはファイル面数を変更する場合に,変更したリダイレクタのログ取得の設定を有効にするための手順を次に示します。
変更できる設定項目と,項目に対応するユーザ定義ファイルとキーを次の表に示します。なお,Microsoft IISのバージョンによっては,キーに指定する値が異なります。isapi_redirect.confについては,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「9.2 isapi_redirect.conf(Microsoft IIS用リダイレクタ動作定義ファイル)」を参照してください。
表3-33 Microsoft IISでのリダイレクタのログ取得の設定項目(サーブレットエンジンモードの場合)
項目 | isapi_redirect.confのキー |
---|---|
メッセージログ,保守用トレースログのログ出力レベル | log_level |
メッセージログ出力先 | log_file_dir |
メッセージログファイルサイズ | log_file_size |
メッセージログファイル面数 | log_file_num |
メッセージログファイル名のプリフィックス | log_file_prefix |
保守用トレースログ出力の有無 | trace_log |
保守用トレースログ出力先 | trace_log_file_dir※ |
保守用トレースログファイルサイズ | trace_log_file_size |
保守用トレースログファイル面数 | trace_log_file_num |
保守用トレースログファイル名のプリフィックス | trace_log_file_prefix※ |
注※ 保守用トレースログの出力先とプリフィックスには,同じ値を指定しないでください。同じ値を指定した場合は,リダイレクタが動作しません。
TPBrokerのトレースファイルの出力先,ファイル数,エントリ数の変更について説明します。
TPBrokerのトレースファイルのデフォルトの出力先は次のとおりです。
変更できる項目と,項目に対応するユーザ定義ファイルとキーを次に示します。
項目 | 対応するユーザ定義ファイルとキー |
---|---|
トレースファイルの出力先 | usrconf.cfgのweb.server.log.directoryキー または usrconf.propertiesのvbroker.orb.htc.tracePathキー |
トレースファイルのファイル数 | usrconf.propertiesのvbroker.orb.htc.comt.fileCountキー |
トレースファイルのエントリ数 | usrconf.propertiesのvbroker.orb.htc.comt.entryCountキー |
ファイルおよびキーの詳細については,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」を参照してください。
環境設定ユティリティまたはDABroker Library動作環境定義ファイルで,ログファイルサイズなどを設定します。環境設定ユティリティまたはDABroker Library動作環境定義ファイルの設定については,「4.3 DABroker Libraryの初期設定」を参照してください。
Windowsのシステムモニタを使用して,システムリソースのパフォーマンスデータを取得できます。システムリソースのパフォーマンスデータを取得するための設定方法は,運用管理ポータルでシステムを構築する場合の設定方法と同じです。詳細については,マニュアル「アプリケーションサーバ 運用管理ポータル操作ガイド」およびマニュアル「アプリケーションサーバ 機能解説 保守/移行編」の「3.3.16 OSの統計情報取得の設定」を参照してください。
ユーザダンプを取得するための設定は,OSごとに異なります。
ユーザダンプを取得するためには,ワトソン博士を使用できるように設定しておいてください。ユーザダンプを取得するための設定方法は,運用管理ポータルでシステムを構築する場合の設定方法と同じです。詳細については,マニュアル「アプリケーションサーバ 運用管理ポータル操作ガイド」およびマニュアル「アプリケーションサーバ 機能解説 保守/移行編」の「3.3.17 ユーザダンプ取得の設定」を参照してください。
cjstopwebコマンドの-fdオプションを使用してユーザダンプを取得する場合には,環境変数「CJMEMDUMP_PATH」にユーザダンプの出力先ディレクトリを指定しておいてください。ユーザダンプのファイル名は,cjmemdump.dmpです。
環境変数「CJMEMDUMP_PATH」の設定例を次に示します。
set CJMEMDUMP_PATH=C:\temp |
なお,環境変数「CJMEMDUMP_PATH」を指定する場合には,次の点に注意してください。
coreダンプを取得するための設定方法は,運用管理ポータルでシステムを構築する場合の設定方法と同じです。詳細については,マニュアル「アプリケーションサーバ 機能解説 保守/移行編」の「3.3.18 coreダンプ取得の設定」を参照してください。ただし,サーブレットエンジンモードの場合は,簡易構築定義ファイルではなく,Webコンテナサーバ用のusrconf.cfgで設定します。設定時には,簡易構築定義ファイルで設定するパラメタを,Webコンテナサーバ用のusrconf.cfgのキーに読み替えてください。Webコンテナサーバ用のusrconf.cfgについては,「usrconf.cfg(Webコンテナサーバ用オプション定義ファイル)」を参照してください。
ここでは,次に示すJavaVMの資料を取得するための設定について説明します。
JavaVMのスレッドダンプを取得するための設定について説明します。
JavaVMのスレッドダンプに出力される内容は,usrconf.cfg(Webコンテナサーバ用オプション定義ファイル)のadd.jvm.argキーに指定しているJavaVMの起動オプションによって異なります。
JavaVMのスレッドダンプを出力する場合に指定するオプションを次の表に示します。
表3-34 JavaVMのスレッドダンプを取得するために指定するオプション(サーブレットエンジンモードの場合)
オプション | 説明 |
---|---|
-XX:+HitachiThreadDump | 拡張スレッドダンプを出力します。デフォルトの状態では,出力するように設定されています。 |
-XX:+HitachiThreadDumpToStdout | 拡張スレッドダンプを標準出力に出力します。デフォルトの状態では,出力するように設定されています。 |
-XX:+HitachiThreadDumpWithHashCode | スレッド情報にスレッドのハッシュコードを出力します。デフォルトの状態では,出力するように設定されています。 |
-XX:+HitachiThreadDumpWithCpuTime | スレッド情報にスレッドを開始してからのユーザCPU時間,およびカーネルCPU時間を出力します。デフォルトの状態では,出力するように設定されています。 |
-XX:+HitachiThreadDumpWithBlockCount | スレッド情報にスレッドが処理をブロックした回数,および処理が待ち状態になった回数を出力します。デフォルトの状態では,出力するように設定されています。 |
-XX:+HitachiOutOfMemoryAbort -XX:+HitachiOutOfMemoryAbortThreadDump |
どちらも設定されている場合は,OutOfMemoryErrorによって強制終了した時に,スレッドダンプを出力します。ただし,J2SEクラスライブラリでCヒープ不足が発生した場合,およびJavaVMの処理中にCヒープ不足が発生した場合は,スレッドダンプを出力しません。 |
-XX:+HitachiOutOfMemoryAbortThreadDumpWithJHeapProf | OutOfMemoryErrorによって強制終了した時に出力されるスレッドダンプに,クラス別統計情報を出力します。デフォルトでは出力されません。 |
JavaVMログを取得するための設定について説明します。
JavaVMログとは,製品が標準のJavaVMに追加した拡張オプションを使用して取得できるログです。標準のJavaVMよりも,多くのトラブルシュート情報が取得できます。このログファイルを,JavaVMログファイルといいます。
JavaVMログファイルを取得するためには,usrconf.cfg(Webコンテナサーバ用オプション定義ファイル)のadd.jvm.argキーにJavaVMの起動オプションを指定します。
JavaVMログファイルを取得するために指定するオプションを次の表に示します。
表3-35 JavaVMログ(JavaVMログファイル)を取得するために指定するオプション(サーブレットエンジンモードの場合)
オプション | 説明 |
---|---|
-XX:+HitachiOutOfMemoryStackTrace -XX:+HitachiVerboseGC -XX:+HitachiJavaClassLibTrace |
三つのオプションのうちどれかを指定している場合に,JavaVMログファイルを出力します。
|
必要に応じて,次の拡張オプションを指定して,JavaVMログファイルの出力方法や出力内容を設定してください。
JavaVMのオプションについては,「usrconf.cfg(Webコンテナサーバ用オプション定義ファイル)」を参照してください。
ここでは,JavaVMの保守情報(Javaヒープの情報)およびGCのログに拡張verbosegc情報を出力するための設定について説明します。次の表に示すオプションで,拡張verbosegc情報の出力を有効にして,拡張verbosegc情報の出力形式を指定してください。
表3-36 拡張verbosegc情報を出力するために指定するオプション(サーブレットエンジンモードの場合)
オプション | 説明 |
---|---|
-XX:+HitachiVerboseGC | 拡張verbosegc情報をJavaVMログファイルに出力します。 |
-XX:+HitachiVerboseGCPrintDate | 拡張verbosegc情報の各行に日付を出力します。 |
-XX:+HitachiVerboseGCCpuTime※ | GCの開始から終了までの間で,GCを実行したスレッドのCPU利用時間を出力します。CPU利用時間は,ユーザモードで費やしたCPU時間とカーネルモードで費やしたCPU時間に分けて出力されます。 |
-XX:HitachiVerboseGCIntervalTime=<時間間隔(秒)> | 拡張verbosegc情報の出力間隔を指定します。 |
-XX:+HitachiVerboseGCPrintCause | 拡張verbosegc情報に,GCが発生した要因を出力します。 |
-XX:+HitachiOutputMilliTime | 拡張verbosegc情報の各行に日時(ミリ秒まで)を出力します。 |
-XX:+HitachiCommaVerboseGC | 拡張verbosegc情報をCSV形式で出力します。 |
-XX:+HitachiVerboseGCPrintTenuringDistribution | Survivor領域の年齢分布情報を出力します。出力形式や出力情報については,マニュアル「アプリケーションサーバ 機能解説 保守/移行編」の「9.11 Survivor領域の年齢分布情報出力機能」を参照してください。 |
-XX:+HitachiVerboseGCPrintJVMInternalMemory | JavaVM内部で管理しているヒープ情報をJavaVMログファイルに出力します。 |
-XX:+HitachiVerboseGCPrintThreadCount | Javaスレッドの数を監視するために,Javaスレッドの数をJavaVMログファイルに出力します。 |
-XX:+HitachiVerboseGCPrintDeleteOnExit | java.io.File.deleteOnExit()を呼び出したことによってJavaVMが確保した累積のヒープサイズとメソッドの呼び出し回数を,JavaVMログファイルに出力します。 |
拡張verbosegc情報から,そのサーバで必要とするJavaヒープ領域サイズ,Metaspace領域サイズなどを見積もるための情報を取得できます。
ここでは,Webアプリケーションが出力するログを,トレース共通ライブラリ形式で出力するための設定方法について説明します。Webアプリケーションのユーザログを出力しない場合は,この設定は不要です。
アプリケーションサーバでは,トレース共通ライブラリを使用して,Webアプリケーションが出力するログをアプリケーションサーバの構成ソフトウェアが出力するログと同じ形式(トレース共通ライブラリ形式)で出力できます。これによって,システムのログとWebアプリケーションのログを同じ形式で扱うことができるようになり,システム全体のログ運用の信頼性とログ出力の性能を高められます。
Webアプリケーションが出力するログを,トレース共通ライブラリ形式で出力する場合は,Webアプリケーションを開発する際に,ログ出力処理を設定する必要があります。また,usrconf.propertiesを編集して,ハンドラからのログの出力先,ログレベル,ログ面数,使用するフィルタ,フォーマッタなどを指定する必要があります。
ユーザログを出力するための設定方法については,マニュアル「アプリケーションサーバ 機能解説 拡張編」の「9. アプリケーションのユーザログ出力」を参照してください。ただし,次の点に注意してください。ただし,サーブレットエンジンモードの場合は,簡易構築定義ファイルではなく,Webコンテナサーバ用のusrconf.propertiesで設定します。設定時には,簡易構築定義ファイルで設定するパラメタを,Webコンテナサーバ用のusrconf.propertiesのキーに読み替えてください。Webコンテナサーバ用のusrconf.propertiesについては,「usrconf.properties(Webコンテナサーバ用ユーザプロパティファイル)」を参照してください。
All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.