名前
jfr - Flight Recorderファイルの印刷および操作
シノプシス
フライト・レコーディングのコンテンツを標準出力に出力するには:
jfr print [options] file
集計されたイベント・データを標準出力で表示するには:
jfr view [options] file
.jfc設定ファイルを構成するには:
jfr configure [options]
フライト・レコーディング・イベントに関するメタデータ情報を出力するには:
jfr metadata [file]
フライト・レコーディング・ファイルのサマリー統計を表示するには:
jfr summary file
フライト・レコーディング・ファイルからイベントを削除するには:
jfr scrub [options] file
チャンク・ファイルをフライト・レコーディング・ファイルに組み入れるには:
jfr assemble repository file
フライト・レコーディング・ファイルをチャンク・ファイルに逆アセンブルするには:
jfr disassmble [options] file
- options
- オプション: 空白で区切られたコマンド行オプションを指定します。 使用可能なオプションについては、個別のサブコンポーネントの項を参照してください。
- file
- 
ターゲット・フライト・レコーディング・ファイル(.jfr)の名前を指定します。
- リポジトリ
- フライト・レコーディングにアセンブルするチャンク・ファイルのロケーションを指定します。
説明
jfrコマンドは、フライト・レコーダ・ファイル(.jfr)と相互作用するツールを提供します。 主要な機能は、フライト・レコーディング・ファイルをフィルタ処理し、人が読める形式に出力することです。 レコーディング・ファイルのスクラブ、マージ、および分割もサポートされています。 
フライト・レコーディング・ファイルは、バイナリ形式のファイルとして作成および保存されます。 フライト・レコーディングからコンテンツを抽出して操作し、判読可能な形式に翻訳できるツールを用意することで、開発者はJavaアプリケーションでパフォーマンスの問題をデバッグできます。
サブコマンド
jfrコマンドには、次のサブコマンドがあります:
- print
- view
- configure
- metadata
- summary
- scrub
- assemble
- disassemble
jfr printサブコマンド
フライト・レコーディング・ファイルのコンテンツを標準出力に出力するには、jfr printを使用します。
構文は次のとおりです。
jfr print [--xml|--json] [--categories <filters>] [--events <filters>] [--stack-depth <depth>] <file>
説明:
- --xml
- レコーディングをXML形式で出力します。
- --json
- レコーディングをJSON形式で出力します。
- --categories<filters>
- カテゴリ名と一致するイベントを選択します。 フィルタは、名前、単純または修飾された、あるいは引用符で囲まれたglobパターンのカンマ区切りリストです。
- --events<filters>
- イベント名と一致するイベントを選択します。 フィルタは、名前、単純または修飾された、あるいは引用符で囲まれたglobパターンのカンマ区切りリストです。
- --stack-depth<depth>
- スタック・トレースのフレーム数。既定値は5です。
- <file>
- 
レコーディング・ファイル(.jfr)のロケーション
フライト・レコーディング・ファイルの内容を印刷するためのデフォルトの形式は、xmlまたはjsonのいずれかが指定されていないかぎり、判読可能な形式です。 これらのオプションでは、ユーザーが作成したスクリプトで解析または処理できる、マシンが読み取ることのできる出力が提供されます。 
フィルタの使用例を参照するには、jfr --help printを使用します。
表示されるデータ量を削減するために、イベントまたはイベントのカテゴリをフィルタで除外できます。 フィルタは、イベントのシンボリック名、@Name注釈を使用して設定されるか、または@Category注釈を使用して設定されるカテゴリ名に基づいて処理されます。 複数のフィルタが使用される場合は、両方のフィルタのイベントが含められます。 フィルタが使用されていない場合、すべてのイベントが出力されます。 カテゴリ・フィルタとイベント・フィルタの組合せを使用する場合、選択したイベントは2つのフィルタの結合です。 
たとえば、すべてのGCイベントとCPULoadイベントを表示するには、次のコマンドを使用します:
jfr print --categories GC --events CPULoad recording.jfr
イベント値は、使用されているコンテンツ・タイプに応じて書式設定されます。 たとえば、値0.52を持つjdk.jfr.Percentage注釈が設定されたフィールドは52%と書式設定されます。 
スタック・トレースは、デフォルトでは5個のフレームに切り捨てられますが、その数は--stack-depthコマンドライン・オプションを使用して増減できます。
jfr viewサブコマンド
jfr viewを使用して、イベント・データを標準出力に集計および表示します。
構文は次のとおりです。
jfr view [--verbose] [--width <integer>] [--truncate <mode>] [--cell-height <integer>] <view> <file>
説明:
- --verbose
- ビューを構成する問合せを表示します。
- --width<integer>
- ビューの幅(文字単位)。 デフォルト値はビューによって異なります。
- --truncate<mode>
- 表セルの領域を超えるコンテンツを切り捨てる方法。 モードはbeginningまたはendです。 デフォルト値は'end'です。
- --cell-height<integer>
- 表セル内の最大行数。 デフォルト値はビューによって異なります。
- <view>
- 
表示するビューまたはイベント・タイプの名前。 jfr --help viewを使用して、使用可能なビューのリストを表示します。
- <file>
- レコーディング・ファイル(.jfr)のロケーション
<view>パラメータは、イベント・タイプ名にできます。 jfr view types <file>を使用してリストを表示します。 すべてのビューを表示するには、jfr view all-views <file>を使用します。 すべてのイベントを表示するには、jfr view all-events <file>を使用します。 
jfr configureサブコマンド
jfr configureを使用して、.jfc設定ファイルを構成します。
構文は次のとおりです。
jfr configure [--interactive] [--verbose] [--input <files>] [--output <file>] [option=value]* [event-setting=value]*
- --interactive
- 一連の質問によって構成が決定される対話モード。
- --verbose
- 変更された設定を表示します。
- --input<files>
- 新しい構成のベースとなる.jfcファイルのカンマ区切りリスト。 ファイルが指定されていない場合は、JDKのデフォルト・ファイル(default.jfc)が使用されます。 'none'が指定されている場合、新しい構成は空になります。
- --output<file>
- 生成された出力ファイルのファイル名。 指定しない場合、ファイル名custom.jfcが使用されます。
- option=value
- 
変更するオプション値。 使用可能なオプションを表示するには、jfr help configureを使用
- event-setting=value
- 変更するイベント設定値。 フォームの使用: <event-name>#<setting-name>=<value>新しいイベント設定を追加するには、イベント名の先頭に+を付けます。
空白デリミタは、タイム・パン値(20ミリ秒)には省略できます。 設定構文の詳細は、jdk.jfrパッケージのJavadocを参照してください。
jfr metadataサブコマンド
jfr metadataを使用して、フライト・レコーディング・ファイル内のイベント名、カテゴリ、フィールド・レイアウトなどのイベントに関する情報を表示します。
構文は次のとおりです。
jfr metadata [--categories <filter>] [--events <filter>] [<file>]
- --categories<filter>
- カテゴリ名と一致するイベントを選択します。 フィルタは、名前、単純または修飾された、あるいは引用符で囲まれたglobパターンのカンマ区切りリストです。
- --events<filter>
- イベント名と一致するイベントを選択します。 フィルタは、名前、単純または修飾された、あるいは引用符で囲まれたglobパターンのカンマ区切りリストです。
- <file>
- レコーディング・ファイル(.jfr)のロケーション
<file>パラメータを省略すると、jfrツールが配置されているJDKのメタデータが使用されます。
jfr summaryサブコマンド
jfr summaryを使用してレコーディングの統計を印刷します。 たとえば、記録されたイベントの数と、使用されたディスク領域の量についてサマリーに示すことができます。 これは、イベント設定の影響のトラブルシューティングおよび理解するのに役立ちます。 
構文は次のとおりです。
jfr summary <file>
説明:
- <file>
- 
フライト・レコーディング・ファイル(.jfr)のロケーション
jfr scrubサブコマンド
jfr scrubを使用して、ファイルから機密性の高いコンテンツを削除するか、サイズを小さくします。
構文は次のとおりです。
jfr scrub [--include-events <filter>] [--exclude-events <filter>] [--include-categories <filter>] [--exclude-categories <filter>] [--include-threads <filter>] [--exclude-threads <filter>] <input-file> [<output-file>]
- --include-events<filter>
- イベント名と一致するイベントを選択します。
- --exclude-events<filter>
- イベント名に一致するイベントを除外します。
- --include-categories<filter>
- カテゴリ名と一致するイベントを選択します。
- --exclude-categories<filter>
- カテゴリ名に一致するイベントを除外します。
- --include-threads<filter>
- スレッド名に一致するイベントを選択します。
- --exclude-threads<filter>
- スレッド名に一致するイベントを除外します。
- <input-file>
- イベントを読み取る入力ファイル。
- <output-file>
- フィルタ・イベントの書込み先の出力ファイル。 ファイルが指定されていない場合は、入力ファイルと同じパスに書き込まれますが、"-scrubbed"がファイル名に追加されます。
フィルタは、名前、単純または修飾された、あるいは引用符で囲まれたglobパターンのカンマ区切りリストです。 複数のフィルタが使用されている場合は、指定された順序で適用されます。
jfr assembleサブコマンド
jfr assembleを使用すると、チャンク・ファイルをレコーディング・ファイルに組み立てることができます。
構文は次のとおりです。
jfr assemble <repository> <file>
説明:
- <repository>
- チャンク・ファイルを含むリポジトリがあるディレクトリ。
- <file>
- 
フライト・レコーディング・ファイル(.jfr)のロケーション。
フライト・レコーディング情報はチャンクで書き込まれます。 チャンクには、解析に必要なすべての情報が含まれています。 一般的に、チャンクにはトラブルシューティングに役立つイベントが含まれます。 JVMがクラッシュする必要がある場合、これらのチャンクをリカバリして、このjfr assembleコマンドを使用したフライト・レコーディング・ファイルの作成に使用できます。 これらのチャンク・ファイルは連結されて時系列順になり、(.part)が終了していないチャンク・ファイルは除外されます。 
jfr disassembleサブコマンド
フライト・レコーディング・ファイルをチャンク・ファイルのピースに分解するには、jfr disassembleを使用します。
構文は次のとおりです。
jfr disassemble [--max-chunks<chunks>] [--output <directory>] <file>
説明:
- --output<directory>
- 逆アセンブルされたファイルを書き込むロケーション(デフォルトではカレント・ディレクトリ)
- --max-chunks<chunks>
- ファイル当たりの最大チャンク数 (デフォルトは5)。 チャンク・サイズは様々ですが、通常は約15 MBです。
- --max-size<size>
- ファイル当たりの最大バイト数。
- <file>
- 
フライト・レコーディング・ファイル(.jfr)のロケーション
この関数は、障害のあるチャンクを削除して、壊れたファイルを修復する場合に役立ちます。 また、転送に大きすぎるファイルのサイズを減らすためにも使用できます。 結果のチャンク・ファイルの名前はmyfile_1.jfr、myfile_2.jfrなどです。必要に応じて、結果のファイル名にゼロが埋め込まれ、時系列順が保持されます。 たとえば、レコーディングが100を超えるチャンクで構成されている場合、チャンク・ファイル名はmyfile_001.jfrとなります。 
jfrバージョンおよびhelpサブコマンド
このjfrコマンドのバージョン文字列情報を表示するには、jfr --versionまたはjfr versionを使用します。
Jfrサブコマンドでヘルプを使用するには、次のコマンドを使用します:
jfr <--help|help> [subcommand]
説明:
[subcommand]は次のいずれかです:
- print
- view
- configure
- metadata
- summary
- scrub
- assemble
- disassemble