3.2. 実行中の JVM での JDK Flight Recorder の開始

jcmd ユーティリティーを使用して、診断コマンド要求を実行中の JVM に送信できます。jcmd には、startdumpstop などの最も基本的なコマンドとともに、JFR との対話のコマンドが含まれます。

JVM と対話するには、jcmd に JVM のプロセス ID (pid) が必要です。実行中の JVM プロセス ID のリストを表示する jcmd -l コマンドと、プロセスの起動に使用したメインクラスやコマンドライン引数などの情報を表示することで取得できます。

jcmd ユーティリティーは $JAVA_HOME/bin にあります。

手順

  • 以下のコマンドを使用して、フライトレコーディングを開始します。

    $ jcmd <pid> JFR.start <options>

    たとえば、以下のコマンドは demorecording という名前の録画を開始します。これは過去 4 時間のデータを保持し、サイズが 400 MB の録画になります。

    $ jcmd <pid> JFR.start name=demorecording maxage=4h maxsize=400MB

関連情報