Cosminexus システム構築ガイド

[目次][用語][索引][前へ][次へ]

5.19 JavaVMの資料取得の設定

この節では,次に示すJavaVMの資料を取得するための設定について説明します。

JavaVMのオプションについては,マニュアル「Cosminexus リファレンス 定義編」を参照してください。

なお,JavaVMのスレッドダンプは,デフォルトでは次のディレクトリ下に出力されます。

日立固有のJavaVMログは,デフォルトでは次のディレクトリ下に出力されます。

出力先を変更したい場合は,JavaVMまたはJ2EEサーバ起動前に,簡易構築定義ファイルで論理J2EEサーバ(j2ee-server)の<configuration>タグ内に,ejb.server.log.directoryパラメタで,ログ出力ディレクトリを変更しておく必要があります。

次に,JavaVMのスレッドダンプ,日立固有のJavaVMログ(日立JavaVMログファイル)それぞれの取得の設定について説明します。

<この節の構成>
(1) JavaVMのスレッドダンプ取得の設定
(2) 日立固有のJavaVMログ取得の設定
(3) 拡張verbosegc機能オプションの設定

(1) JavaVMのスレッドダンプ取得の設定

JavaVMのスレッドダンプを取得するための設定について説明します。

JavaVMのスレッドダンプに出力される内容は,簡易構築定義ファイルでJavaVM起動パラメタに指定しているJavaVMの起動オプションによって異なります。JavaVMの起動オプションは,論理J2EEサーバ(j2ee-server)の<configuration>タグ内に,JavaVM起動パラメタで定義します。JavaVM起動パラメタの指定内容を次に示します。

<param-name>タグ
add.jvm.arg

<param-value>タグ
JavaVMのスレッドダンプを取得するために指定するオプションについては,表5-16を参照してください。

JavaVMのスレッドダンプを出力する場合に指定するオプションを次の表に示します。

表5-16 JavaVMのスレッドダンプを取得するために指定するオプション

オプション 説明
-XX:+HitachiThreadDump 拡張スレッドダンプを出力します。デフォルトの状態では,出力するように設定されています。
-XX:+HitachiThreadDumpToStdout 拡張スレッドダンプを標準出力に出力します。デフォルトの状態では,出力するように設定されています。
-XX:+HitachiThreadDumpWithHashCode スレッド情報にスレッドのハッシュコードを出力します。デフォルトの状態では,出力するように設定されています。
-XX:+HitachiThreadDumpWithCpuTime スレッド情報にスレッドを開始してからのユーザCPU時間,およびカーネルCPU時間を出力します。デフォルトの状態では,出力するように設定されています。
-XX:+HitachiThreadDumpWithBlockCount スレッド情報にスレッドが処理をブロックした回数,および処理が待ち状態になった回数を出力します。デフォルトの状態では,出力するように設定されています。
-XX:+HitachiOutOfMemoryAbort
-XX:+HitachiOutOfMemoryAbortThreadDump
どちらも設定されている場合は,OutOfMemoryErrorによって強制終了した時に,スレッドダンプを出力します。ただし,J2SEクラスライブラリでCヒープ不足が発生した場合,およびJavaVMの処理中にCヒープ不足が発生した場合は,スレッドダンプを出力しません。

(2) 日立固有のJavaVMログ取得の設定

日立固有のJavaVMログを取得するための設定について説明します。

日立固有のJavaVMログとは,日立が標準のJavaVMに追加した拡張オプションを使用して取得できるログです。標準のJavaVMよりも,多くのトラブルシュート情報が取得できます。このログファイルを,日立JavaVMログファイルといいます。

日立JavaVMログファイルを取得するためには,簡易構築定義ファイルでJavaVM起動パラメタにJavaVMの起動オプションを指定します。JavaVMの起動オプションは,論理J2EEサーバ(j2ee-server)の<configuration>タグ内に,JavaVM起動パラメタで定義します。JavaVM起動パラメタの指定内容を次に示します。

<param-name>タグ
add.jvm.arg

<param-value>タグ
日立固有のJavaVMログ(日立JavaVMログファイル)を取得するために指定するオプションについては,表5-17を参照してください。

日立JavaVMログファイルを取得するために指定するオプションを次の表に示します。

表5-17 日立固有のJavaVMログ(日立JavaVMログファイル)を取得するために指定するオプション

オプション 説明
-XX:+HitachiOutOfMemoryStackTrace
-XX:+HitachiVerboseGC
-XX:+HitachiJavaClassLibTrace
次のオプションのうちどれかを指定している場合に,日立JavaVMログファイルを出力します。
  • -XX:+HitachiOutOfMemoryStackTraceを指定している場合は,例外情報とスタックトレースを日立JavaVMログファイルに出力します。なお,このオプションを指定すると,-XX:+HitachiOutOfMemorySizeおよび-XX:+HitachiOutOfMemoryCauseも同時に指定されます。
  • -XX:+HitachiVerboseGCを指定している場合は,ガーベージコレクションが発生したときに,拡張verbosegc情報を日立JavaVMログファイルに出力します。
  • -XX:+HitachiJavaClassLibTraceを指定している場合は,クラスライブラリのスタックトレースを日立JavaVMログファイルに出力します。

必要に応じて,次の拡張オプションを指定して,日立JavaVMログファイルの出力方法や出力内容を設定してください。

JavaVMのオプションについては,マニュアル「Cosminexus リファレンス 定義編」を参照してください。

(3) 拡張verbosegc機能オプションの設定

ここでは,JavaVMの保守情報(Javaヒープの情報)およびガーベージコレクションのログに拡張verbosegc情報を出力するための設定について説明します。次の表に示すオプションで,拡張verbosegc情報の出力を有効にして,拡張verbosegc情報の出力形式を指定してください。

表5-18 拡張verbosegc情報を出力するために指定するオプション

オプション 説明
-XX:+HitachiVerboseGC 拡張verbosegc情報を日立JavaVMログファイルに出力します。
-XX:+HitachiVerboseGCPrintDate 拡張verbosegc情報の各行に日付を出力します。
-XX:+HitachiVerboseGCCpuTime ガーベージコレクションの開始から終了までの間で,ガーベージコレクションを実行したスレッドのCPU利用時間を出力します。CPU利用時間は,ユーザモードで費やしたCPU時間とカーネルモードで費やしたCPU時間に分けて出力されます。
-XX:HitachiVerboseGCIntervalTime=<時間間隔(秒)> 拡張verbosegc情報の出力間隔を指定します。
-XX:+HitachiVerboseGCPrintCause 拡張verbosegc情報に,ガーベージコレクションが発生した要因を出力します。
-XX:+HitachiOutputMilliTime 拡張verbosegc情報の各行に日時(ミリ秒まで)を出力します。
-XX:+HitachiCommaVerboseGC 拡張verbosegc情報をCSV形式で出力します。

注※
HP-UXの場合,このオプションは使用できません。オプションを指定しても無視されます。

拡張verbosegc情報から,そのサーバで必要とするJavaヒープ領域サイズ,Perm領域サイズなどを見積もるための情報を取得できます。