この章では、実行中のOracle JRockit JVMプロセスに送信できるすべての診断コマンドをアルファベット順に示します。
JVMプロセスへの診断コマンドの送信方法の詳細は、『Oracle JRockit JDKツール・ガイド』の「診断コマンドの実行」を参照してください。
この章では、次の診断コマンドおよびその属性について説明します。
このコマンドは、Oracle JRockitフライト・レコーダと関連付けられています。フライト記録のステータスに関する情報を出力します。このコマンドで使用できる引数は次のとおりです。
引数 | 説明 |
---|---|
name |
文字列としての記録識別子。このパラメータを使用する場合は、recording の値を指定する必要はありません。 |
recording |
数値としての記録識別子。このパラメータを使用する場合は、name の値を指定する必要はありません。 |
verbose |
冗長出力を有効にするかどうかを指定します。
デフォルト値は |
このコマンドは、JRockit JVMの起動に使用するコマンドライン・オプションを出力します。
このコマンドは、Oracle JRockitフライト・レコーダと関連付けられています。実行中のフライト・レコーダ記録をダンプします。このコマンドで使用できる引数は次のとおりです。
引数 | 説明 |
---|---|
name |
文字列としての記録識別子。このパラメータを使用する場合は、recording の値を指定する必要はありません。 |
recording |
数値としての記録識別子。このパラメータを使用する場合は、name の値を指定する必要はありません。 |
copy_to_file |
記録データをコピーする宛先のファイル名を指定します。 |
compress_copy |
GZipを使用してcopy_to_file の場所にファイルを圧縮します。デフォルト値はfalse です。 |
このコマンドは、指定した例外タイプに基づいて例外ロギングおよびJRockitフライト・レコード例外イベントをフィルタ処理します。このコマンドで使用できる引数は次のとおりです。
引数 | 説明 |
---|---|
pattern |
例外タイプを文字列として指定します。次に例を示します。
|
Oracle JRockit JVMで、プロセスが失敗してコア・ファイルが作成されるコードを強制的に実行します。
このコマンドは使用すると重大な影響があるため、デフォルトでは有効ではありません。このコマンドは、JVMの完全な状態の取得を必要とする問題を診断する場合のみ使用してください。コマンドの実行を有効にするには、-Djrockit.ctrlbreak.enableforce_crash=true
と指定してJRockitを起動します。
このコマンドは、ヒープ診断レポートを出力します(『Oracle JRockitコマンドライン・リファレンス』の-XX:HeapDiagnosticsOnOutOfMemoryErrorに関する項も参照)。このコマンドではCtrl-Breakハンドラの出力ストリームに出力が送信され、
-XX:HeapDiagnosticsPath
オプションで指定されたパスには送信されません。
このコマンドは、特定のコマンドまたはすべてのコマンドに関する追加情報を表示します。このコマンドで使用できる引数は次のとおりです。
引数 | 説明 |
---|---|
all |
すべてのコマンドのヘルプを表示します。デフォルトはfalse です。この引数はオプションです。 |
command |
指定したコマンドのヘルプを表示します。この引数は省略可能です。指定しない場合、コマンドでは使用可能なコマンドのリストが表示されます。 |
このコマンドはJavaヒープのHPROF形式のダンプを生成します。
形式
hprofdump [filename=<file>] [segment_threshold] [segment_size]
このコマンドで使用できる引数は次のとおりです。
引数 | 説明 |
---|---|
filename |
ダンプを書き込む先のファイルの名前を設定します。ファイル名を指定しない場合、コマンドでは-XX:HeapDumpPath コマンドライン・オプションで指定された値が使用されます。 |
segment_threshold |
ヒープ使用量の境界を設定します。この値を上回ると、JVMでセグメント化されたヒープ・ダンプ(JAVA PROFILE 1.0.2形式)の生成が開始されます。セグメントしきい値を指定しない場合、 『Oracle JRockitコマンドライン・リファレンス』の説明のとおり、コマンドではデフォルト値の-XX:SegmentedHeapDumpThresholdが使用されます。 |
segment_size |
セグメント・サイズの上限を概数で設定します。セグメント化されたヒープ・ダンプの生成はこのサイズまでに制限されます。segment_size を指定しない場合、 『Oracle JRockitコマンドライン・リファレンス』の説明のとおり、このコマンドでは-XX:HeapDumpSegmentSizeに設定されたデフォルト値が使用されます。 |
このコマンドは、リスニング・ソケットを停止することにより管理サーバーを停止します。このコマンドが機能するためには、managementserver.jar
がブート・クラスパス内にある必要があります。
このコマンドは、Oracle JRockit JVMのフラグ・オプションとその現在の値をリスト表示します。
flag
: このフラグのみをリスト表示します。
describe
: フラグの説明を表示します。
alias
: フラグ別名を出力します(ある場合)。
setonly
: 明示的または暗黙的に設定されたフラグのみをリスト表示します。
このコマンドは、ロック・プロファイル・カウンタの現在の値を出力します。ロック・プロファイリングを有効にするには、-XX+UseLockProfiling
オプションを使用します。
このコマンドは、ロック・プロファイル・カウンタの現在の値をリセットします。ロック・プロファイリングを有効にするには、-XX+UseLockProfiling
オプションを使用します。
このコマンドは、メモリー・リーク・サーバーを起動または停止します。このコマンドで使用できる引数は次のとおりです。
引数 | 説明 |
---|---|
port |
バインドする宛先のポートを識別します。デフォルト値は7095 です。 |
version |
必要なプロトコル・バージョンを識別します。デフォルト値は3 です。 |
action |
サーバーを起動または停止します。デフォルトは状態の切替えです。 |
force |
処理を強制実行します。デフォルト値はfalse です。 |
このコマンドは、ロードされたすべてのクラスを出力します。
このコマンドは、例外の出力を有効または無効にします(『Oracle JRockitコマンドライン・リファレンス』の-Xverboseに関する項を参照)。
形式
print_exceptions stacktraces= all|true|false][exceptions= all|true|false]
注意: 例外の出力を完全にオフにするには、stacktraces=true でオンにした場合でも、exceptions=false を設定する必要があります。 |
このコマンドは、JRockit JVMプロセスで使用されているすべてのメモリーをOSデータごとに出力します。また、各サブシステムによって認識されたメモリー使用量も出力されます。
このコマンドから最も詳細な情報を得るには、ユーザーの環境変数でUSE_OS_MALLOC
を0
に設定します。また、変数TRACE_ALLOC_SITES
を有効に(つまり、この変数を1
に設定)して割当てサイト追跡をデフォルトで有効にすると、オーバーヘッドは多少増加しますが、すべての割当ての場所に関する情報も受信できます。
形式
print_memusage [baseline] [test] [level=<1 | 2 | 3>] [reset] [displayMap]
print_memusage
は、次のいずれかの引数とともに使用します。
引数 | 説明 |
---|---|
baseline |
メモリー使用量のスナップショットを格納します。 |
test |
格納されたこのベースラインと、以前に格納されたベースラインの違いを出力します。 |
level |
出力する詳細レベルを指定します。レベル1を指定すると、ソース・ファイルのメモリー使用量が出力されます。レベル2を指定すると、それより詳細な情報が出力され、関数名のメモリー使用量が表示されます。レベル3を指定すると、最も詳細な情報が出力され、ソース・コード・レベルでのメモリー使用量統計が表示されます。 |
reset |
メモリー使用量統計を出力し、格納されたベースラインを削除します。新規のベースラインが設定されるまでは、print_memusage の結果に違いは生じません。 |
displayMap |
仮想メモリーでメモリー使用量ベースラインを設定します。 |
Oracle JRockit Mission Controlに付属しているメモリー・リーク・ディテクタ・オンライン・ヘルプを参照してください。
通常のスレッド・ダンプを出力します。
形式
print_threads [nativestack= true] [jvmmonitors=true]
このコマンドで使用できる引数は次のとおりです。
引数 | 説明 |
---|---|
compact |
同じスタックトレースをまとめてすべてのスレッドを出力します(ネイティブスタックやモニターは出力されません)。デフォルト値はfalse です。 |
concurrentlocks |
java.util.concurrent ロックを出力します。デフォルト値はfalse です。 |
internal |
Oracle JRockit内部スレッドを出力します。デフォルト値はtrue 。 |
javastack |
Javaスタック・フレームを出力します。デフォルト値はfalse です。 |
jvmmonitors: true |
JRockit JVM内部のネイティブ・ロック(登録されているもの) : ステータスおよび待機キューを出力します。XX:+UseNativeLockProfiling も指定すると、そのプロファイル統計(acquired/contended/tryfailed)も出力されます。 |
monitors |
ロック情報を出力します。デフォルト値はtrue 。 |
nativestack: true |
スタック・トレースにネイティブ・フレームを含めます。デフォルト値はfalse です。 |
このコマンドは、すべてのUTF8文字列を出力します。
このコマンドは、JVMの内部状態に関する情報を出力します。この情報はOracleサポートによるトラブルシューティングに使用可能で、Oracle JRockitの障害レポートに含まれる情報と同じです。
このコマンドはjava.lang.System.gc()
メソッドを呼び出し、ガベージ・コレクタを実行します。
形式
runsystemgc [full=false] [fullcompact=true]
コマンドで使用できる引数は次のとおりです。
引数 | 説明 |
---|---|
full | フル・ガベージ・コレクションを実行します。
システムのデフォルト値を継承します(-XXfullSystemGCを参照)。 |
fullcompact | 各フル・ガベージ・コレクション・イベントで完全圧縮を強制的に実行します。デフォルト値はtrue 。 |
このコマンドは、後続のすべてのコマンドで出力に使用されるファイルを設定します。1つのファイル内に複数のset_filename
コマンドを指定できます。SIGQUIT
またはctrl+break
呼出しの場合、デフォルトでは、コマンドはJVMのstderr
出力ストリームに出力します。jrcmd
呼出しの場合、デフォルトではjrcmd
プロセスのstdout
出力ストリ-ムに出力されます。append
引数は、デフォルトでは上書きするように設定されます。
形式
set_filename [filename=<file>] [append=true]
引数 | 説明 |
---|---|
filename |
(オプション)出力するファイルの名前を指定します。指定しない場合、JVMはデフォルトの動作にリセットされます。 |
append |
(オプション)ファイルに追加するか、それともファイルを上書きするかを指定します。 |
フライト記録を開始します。このコマンドで使用できる引数は次のとおりです。
引数 | 説明 |
---|---|
compress: true |
ディスク上の.jfrファイルにgzipを実行するようにフライト・レコーダに指示します。デフォルト値はfalse です。 |
defaultrecording: true |
デフォルトの記録を有効にします。デフォルト値はFALSEです。 |
delay |
記録が開始されるまでの実行時間中の経過時間を設定します。 |
duration |
記録を実行する時間を設定します。 |
filename |
フライト記録ログ・ファイルの名前を設定します。このファイルには.jfrという拡張子が付きます。 |
maxage |
時間にバインドされた記録の場合、記録を継続できる最大時間を設定します。この時間を経過すると、記録がスレッド・バッファからグローバル・バッファにフラッシュされます。 |
maxsize |
サイズにバインドされた記録の場合、記録の最大サイズを設定します。このサイズを超えると、記録がスレッド・バッファからグローバル・バッファにフラッシュされます。 |
name |
記録識別子を設定します。 |
settings |
記録に使用するイベント設定ファイルを識別します。 |
このコマンドは、リスニング・ソケットを起動することにより管理サーバーを起動します。このリスニング・ソケットは、接続が確立されるたびにサーバーを起動します。このコマンドで使用できる引数は次のとおりです。
引数 | 説明 |
---|---|
none |
プライベート・インタフェースでパブリッシュされたJMXコネクタを経由するJMXローカル監視を有効にします。このインタフェースは、Attach APIを使用するローカルJMXクライアントで使用されています。 |
autodiscovery |
リモートJMXコネクタの自動検出を有効または無効にします。自動検出を有効にすると、Oracle JRockit Mission Controlは、マルチキャスト・ベースのJRockit Discovery Protocol (JDP)を通じて、実行中のJRockit JVMインスタンスを自動的に検出できます。 |
autodiscovery_name |
ネットワークで実行中の各種のJRockit JVMインスタンスに関する情報をOracle JRockit Mission Controlが検出できる場所を示す、クラスタおよびノードのパスおよび名前を指定できます。 |
authenticate |
認証を有効または無効にします。このプロパティがfalseに設定されていると、JMXはパスワードを使用しないか、ファイルにアクセスしません。すべてのユーザーがすべてのアクセスを許可されています。 |
class |
クラスをロードし、JVM起動時の早い段階でそのクラスの空のコンストラクタを呼び出します。このコンストラクタから、新しいスレッドが起動され、そのスレッドで管理クライアントが実行されます。-Xmanagement のクラス引数の後には、これ以上引数を指定できません。 |
config_file |
その他の管理構成プロパティをロードできるファイルの場所を指定します。 |
interface |
接続をリスニングする場所である(管理サーバー側の)ローカル・アドレスを指定します。これは複数のアドレス(ネットワーク・カード)を持つマシンに適用されます。 |
local |
ローカルJMXコネクタを有効または無効にします。 |
port |
管理サーバーがリモート・アクセス用に開くポートを指定します。 |
registry_ssl |
RMIコネクタ・スタブを、SSLで保護されたRMIレジストリにバインドします。 |
remote |
リモートJMXコネクタを有効または無効にします。 |
rmiserver_port |
RMIサーバーを、指定したポートにバインドします。 |
ssl |
SSL暗号化を有効または無効にします。 |
このコマンドは-Xmanagement
コマンドライン・オプションと同じ役割を果たします。詳細は、『Oracle JRockitコマンドライン・リファレンス』で-Xmanagementに関する項を参照してください。
このコマンドは、処理中のフライト記録を停止します。このコマンドで使用できる引数は次のとおりです。
形式
stop_flightrecording [name=<string>][recording=<s8>] [discard=<true | false>] [copy_to_file=<string>] [compress_copy=<true | false>]
引数 | 説明 |
---|---|
name |
文字列としての記録識別子。 |
recording |
数値としての記録識別子。 |
discard |
記録を破棄します。デフォルトはfalse です。 |
copy_to_file |
記録を.jfrファイルに転送します。 |
compress_copy |
ディスク上の.jfrファイルにGzipを実行します。 |
このコマンドは、管理サーバーを停止します。
このコマンドは、タイムスタンプ(問合せされたJVMの稼働時間を含む)を出力します。
このコマンドは、通常は-Xverbose
で指定される冗長レベルを変更します。
形式
verbosity [args=<components>] [filename=<file>]
このコマンドは、JRockit JVMバージョンを出力します。