- 
- すべてのスーパー・インタフェース:
- PlatformManagedObject
 
 public interface FlightRecorderMXBean extends PlatformManagedObject Flight Recorderを制御するための管理インタフェース。プラットフォームMBeanサーバーでMXBeanを識別するためのオブジェクト名は、次のとおりです。 jdk.management.jfr:type=FlightRecorderFlight Recorderは、次の方法で構成できます。 - 「レコーディング・オプション」 
 レコーディングを最後にする期間およびデータのダンプ場所と場所を指定します。
- 「設定」 
 使用可能にするイベントおよび各イベントで取得する情報の種類を指定します。
- 「構成」 
 通常は設定ファイルから導出される事前定義済の設定セットで、複数のイベントの構成を同時に指定します。
 設定構文の説明は jdk.jfrパッケージのドキュメントを、構成情報はConfigurationInfoクラスのドキュメントを参照してください。レコーディング・オプション次の表に、 setRecordingOptions(long, Map)およびgetRecordingOptions(long)で使用するオプション名を示します。レコーディング・オプション 名 記述 デフォルト値 書式 値の例 name人間が判読可能なレコーディング名を設定 レコーディングIDの文字列表現 String"My Recording","profiling"maxAge最も古いデータが削除されるまで、そのデータがディスク・リポジトリに保持される期間を指定します。 disk=trueの場合にのみ機能します。そうでない場合、このパラメータは無視されます。"0"(制限なし)制限に影響がない場合は "0"、そうでない場合は正のLong値の文字列表現の後に空白と次の単位のいずれかが続きます。"ns"(nanoseconds)"us"(microseconds)"ms"(milliseconds)"s"(seconds)"m"(minutes)"h"(hours)"d"(days)
 "2 h","24 h","2 d","0"maxSizeデータがディスク・リポジトリに保持されるサイズ(バイト単位)を指定します。 disk=trueの場合にのみ機能します。そうでない場合、このパラメータは無視されます。"0"(制限なし)Long値の文字列表現、正の値でなければならない"0","1000000000"dumpOnExitJava Virtual Machine (JVM)終了時のディスクへのデータのレコーディング "false"Boolean値、"true"または"false"の文字列表現"true","false"destinationレコーディングが停止したときにレコーディング・データが書き込まれるパスを指定します。 "false"フォーマットについては Paths#getPathを参照してください。
 このメソッドが別のプロセスから呼び出された場合、ターゲットJVMが実行されているマシンにデータが書き込まれます。 宛先が相対パスの場合、ターゲットJVMが起動された作業ディレクトリに対する相対パスです。}"c:\recording\recotding.jfr","/recordings/recording.jfr","recording.jfr"disk記録されたデータを記録時に保存します。 "false"Boolean値、"true"または"false"の文字列表現"true","false"durationレコーディングの実行時間を設定 "0"(無制限、連続)"0"を指定しなければなりません。そうでなければ、正のLongの文字列表現の後に空白があり、次の単位の1つが続きます:"ns"(nanoseconds)"us"(microseconds)"ms"(milliseconds)"s"(seconds)"m"(minutes)"h"(hours)"d"(days)
 "60 s","10 m","4 h","0"- 導入されたバージョン:
- 9
 
- 
- 
フィールドのサマリーフィールド 修飾子と型 フィールド 説明 static StringMXBEAN_NAMEFlightRecorderMXBeanのObjectNameの文字列表現。
 - 
メソッドのサマリー修飾子と型 メソッド 説明 longcloneRecording(long recordingId, boolean stop)レコーディングの一部の抽出に役立つ、既存のレコーディングのコピーを作成します。voidcloseRecording(long recordingId)指定されたIDでレコーディングを閉じ、レコーディングに関連付けられているすべてのシステム・リソースを解放します。voidcloseStream(long streamId)指定されたIDでレコーディング・ストリームを閉じ、そのストリームに関連するすべてのシステム・リソースを解放します。voidcopyTo(long recordingId, String outputFile)指定されたファイルにレコーディング・データを書き込みます。List<ConfigurationInfo>getConfigurations()このJava Virtual Machine (JVM)の事前定義された構成のリストを返します。List<EventTypeInfo>getEventTypes()現在登録されているイベント・タイプのリストを返します。Map<String,String>getRecordingOptions(long recordingId)指定されたID (たとえば、記録されたデータを保持する宛先ファイルまたは期間などです。)を使用してレコーディングのオプションを含むマップを返します。List<RecordingInfo>getRecordings()必ずしも実行されているとはかぎらず、使用可能なレコーディングのリストを返します。Map<String,String>getRecordingSettings(long recordingId)指定されたID ((たとえば、イベントしきい値))のレコーディングの設定を含むMapを返しますlongnewRecording()レコーディングを作成しますが、レコーディングは開始しません。longopenStream(long recordingId, Map<String,String> streamOptions)レコーディングに関係なくデータを取得するために、指定されたIDまたは0のレコーディングのデータ・ストリームを開きます。byte[]readStream(long streamId)指定されたIDのストリームからデータの一部を読み取ります。使用できるデータがなくなった場合はnullを返します。voidsetConfiguration(long recordingId, String contents)指定されたIDでレコーディングの文字列表現として構成を設定します。voidsetPredefinedConfiguration(long recordingId, String configurationName)指定されたIDでレコーディングの事前定義済の構成を設定します。voidsetRecordingOptions(long recordingId, Map<String,String> options)レコーディング・オプション(たとえば、データを保持する宛先ファイルと期間などです。)を構成します。voidsetRecordingSettings(long recordingId, Map<String,String> settings)指定したレコーディングの以前の設定をすべて設定して置き換えます。voidstartRecording(long recordingId)指定したIDでレコーディングを開始します。booleanstopRecording(long recordingId)指定したIDで実行中のレコーディングを停止します。longtakeSnapshot()使用可能なすべてのレコーディング済データのスナップショット・レコーディングを作成します。- 
インタフェース java.lang.management.PlatformManagedObjectで宣言されたメソッドgetObjectName
 
- 
 
- 
- 
- 
メソッドの詳細- 
newRecordinglong newRecording() throws IllegalStateException, SecurityExceptionレコーディングを作成しますが、レコーディングは開始しません。- 戻り値:
- レコーディングの開始、停止、クローズおよび構成に使用できる一意のID
- 例外:
- IllegalStateException- flight Recorderを(たとえば、Java Virtual Machine (JVM)にFlight Recorderのサポートがない場合や、ファイル・リポジトリを作成したり、アクセスできない場合などです。)の作成できないか
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("control")がない場合
- 関連項目:
- Recording
 
 - 
takeSnapshotlong takeSnapshot() 使用可能なすべてのレコーディング済データのスナップショット・レコーディングを作成します。スナップショットは、停止状態の合成レコーディングです。 データが使用できない場合、サイズが 0のレコーディングが返されます。スナップショットによって、後の操作である(たとえば、時間間隔の変更やデータ・サイズの削減のための操作)のデータに安定したアクセスが提供されます。 データへのアクセスが不要になった場合、呼出し側はレコーディングを閉じる必要があります。 - 戻り値:
- nullではなく、利用可能なすべてのレコーディング・データのスナップショット
- 例外:
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("control")がない場合
- 関連項目:
- Recording
 
 - 
cloneRecordinglong cloneRecording(long recordingId, boolean stop) throws IllegalArgumentException, SecurityExceptionレコーディングの一部の抽出に役立つ、既存のレコーディングのコピーを作成します。クローニングされたレコーディングには元のレコーディング・データと同じものが含まれますが、新しいIDと名前の先頭に "Clone of recording"が付いています。 元のレコーディングが実行中の場合は、クローンも実行中です。- パラメータ:
- recordingId- クローンの作成元のレコーディングのレコーディングID
- stop- 戻る前に新しく作成したクローンを停止した場合。
- 戻り値:
- レコーディングの開始、停止、クローズおよび構成に使用できる一意のID
- 例外:
- IllegalArgumentException- 指定したIDのレコーディングが存在しない場合
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("control")がない場合
- 関連項目:
- Recording
 
 - 
startRecordingvoid startRecording(long recordingId) throws IllegalStateException, SecurityException指定したIDでレコーディングを開始します。停止したレコーディングは再開できません。 - パラメータ:
- recordingId- 開始するレコーディングのID
- 例外:
- IllegalArgumentException- 指定したIDのレコーディングが存在しない場合
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("control")がない場合
- IllegalStateException
- 関連項目:
- Recording
 
 - 
stopRecordingboolean stopRecording(long recordingId) throws IllegalArgumentException, IllegalStateException, SecurityException指定したIDで実行中のレコーディングを停止します。- パラメータ:
- recordingId- 停止するレコーディングのID
- 戻り値:
- レコーディングが停止した場合にtrue、それ以外の場合はfalse
- 例外:
- IllegalArgumentException- 指定したIDのレコーディングが存在しない場合
- IllegalStateException- レコーディングが実行されていない場合
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("control")がない場合
- 関連項目:
- newRecording()
 
 - 
closeRecordingvoid closeRecording(long recordingId) throws IOException指定されたIDでレコーディングを閉じ、レコーディングに関連付けられているすべてのシステム・リソースを解放します。レコーディングがすでに終了している場合、このメソッドを呼び出すことは効果がありません。 - パラメータ:
- recordingId- 閉じるレコーディングのID
- 例外:
- IllegalArgumentException- 指定したIDのレコーディングが存在しない場合
- IOException- 入出力エラーが発生した場合
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("control")がない場合
- 関連項目:
- newRecording()
 
 - 
openStreamlong openStream(long recordingId, Map<String,String> streamOptions) throws IOExceptionレコーディングに関係なくデータを取得するために、指定されたIDまたは0のレコーディングのデータ・ストリームを開きます。
 オプションがマップから省略された場合は、デフォルト値が使用されます。レコーディング・ストリームのオプション 名 記述 デフォルト値 書式 値の例 startTimeレコーディング・ストリームを開始する時点を指定します。 データの格納方法が原因で、開始時間の前に開始または終了するイベントが含まれる場合があります。 Instant.MIN_VALUE.toString()ISO-8601. Instant.toString()を参照
 またはエポックからのミリ秒"2015-11-03T00:00","1446508800000"endTimeレコーディング・ストリームを終了する時点を指定します。 データの格納方法が原因で、終了時間の後に開始または終了するイベントが含まれる場合があります。 Instant.MAX_VALUE.toString()ISO-8601. Instant.toString()を参照
 またはエポックからのミリ秒"2015-11-03T01:00","1446512400000"blockSizereadStreamの呼出しで読み取る最大バイト数を指定します。"50000"正の long値。blockSizeを非常に高い値に設定すると、Java Virtual Machineが未処理の値とみなされる場合、OutOfMemoryErrorまたはIllegalArgumentExceptionが発生する可能性があります。"50000","1000000",
 ストリームをオープンする前に、指定されたIDのレコーディングを停止する必要があります。 この制限は将来のリリースで解除される可能性があります。 - パラメータ:
- recordingId- ストリームを開くレコーディングのID
- streamOptions- データの量とその読み方を制御するオプションを含むマップ、またはデフォルト・ブロック・サイズでレコーディングのすべてのデータを取得する- null
- 戻り値:
- ストリームの一意のID。
- 例外:
- IllegalArgumentException- iDによるレコーディングが存在しない場合、または- optionsに無効な値が含まれる場合
- IOException- レコーディングが閉じている場合、I/Oエラーが発生するか、指定したレコーディングまたは間隔でデータを使用できません
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("control")がない場合
 
 - 
closeStreamvoid closeStream(long streamId) throws IOException指定されたIDでレコーディング・ストリームを閉じ、そのストリームに関連するすべてのシステム・リソースを解放します。ストリームがすでに閉じられている場合、このメソッドを呼び出すことは効果がありません。 - パラメータ:
- streamId- ストリームのID
- 例外:
- IllegalArgumentException- 指定されたIDのストリームが存在しない場合
- IOException- ストリームを閉じようとしているときにI/Oエラーが発生した場合
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("control")がない場合
- 関連項目:
- openStream(long, Map)
 
 - 
readStreambyte[] readStream(long streamId) throws IOException指定されたIDのストリームからデータの一部を読み取ります。使用できるデータがなくなった場合はnullを返します。レコーディングのデータをすべて読み取るには、 nullが返されるまでこのメソッドを繰り返し呼び出します。- パラメータ:
- streamId- ストリームのID
- 戻り値:
- データのレコーディングを含むバイト配列、または使用できるデータがなくなった場合のnull
- 例外:
- IOException- ストリームがクローズされているか、ストリームを読み込もうとしているときにI/Oエラーが発生した場合
- IllegalArgumentException- ストリームIDのレコーディングが存在しない場合
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("monitor")がない場合
 
 - 
getRecordingOptionsMap<String,String> getRecordingOptions(long recordingId) throws IllegalArgumentException 指定されたID (たとえば、記録されたデータを保持する宛先ファイルまたは期間などです。)を使用してレコーディングのオプションを含むマップを返します。使用可能なオプション名については、 FlightRecorderMXBeanを参照してください。- パラメータ:
- recordingId- オプションを取得するレコーディングのID
- 戻り値:
- nullではなく、レコーディング・オプションを記述するマップ
- 例外:
- IllegalArgumentException- 指定したIDのレコーディングが存在しない場合
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("monitor")がない場合
 
 - 
getRecordingSettingsMap<String,String> getRecordingSettings(long recordingId) throws IllegalArgumentException 指定されたID ((たとえば、イベントしきい値))のレコーディングの設定を含むMapを返します複数のレコーディングが同時に実行されている場合、 Mapオブジェクトに指定された内容よりも多くのデータがレコーディングされる可能性があります。Mapの名前はイベント名であり、"#"(たとえば、"jdk.VMInfo#period"です。)で区切られた設定名です。 この値は、設定値(たとえば、"60 s")のテキスト表現です。- パラメータ:
- recordingId- 設定を取得するレコーディングのID
- 戻り値:
- レコーディング設定を説明するマップ(nullではありません)
- 例外:
- IllegalArgumentException- 指定したIDのレコーディングが存在しない場合
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("monitor")がない場合
 
 - 
setConfigurationvoid setConfiguration(long recordingId, String contents) throws IllegalArgumentException指定されたIDでレコーディングの文字列表現として構成を設定します。- パラメータ:
- recordingId- レコーディングのID
- contents-- nullではなく、使用する構成ファイルの文字列表現
- 例外:
- IllegalArgumentException- 指定されたIDのレコーディングが存在しない場合、または構成を解析できなかった場合。
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("control")がない場合
- 関連項目:
- Configuration.getContents()
 
 - 
setPredefinedConfigurationvoid setPredefinedConfiguration(long recordingId, String configurationName) throws IllegalArgumentException指定されたIDでレコーディングの事前定義済の構成を設定します。- パラメータ:
- recordingId- 構成を設定するレコーディングのID
- configurationName- (たとえば、- "profile"や- "default"などです。)ではなく、- null構成の名前
- 例外:
- IllegalArgumentException- 指定したIDのレコーディングが存在しない場合
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("control")がない場合
- 関連項目:
- getConfigurations()
 
 - 
setRecordingSettingsvoid setRecordingSettings(long recordingId, Map<String,String> settings) throws IllegalArgumentException指定したレコーディングの以前の設定をすべて設定して置き換えます。設定は名前と値のペアで構成され、nameは構成するイベントと設定を示し、valueはその設定内容を示します。 名前は、次の方法で構成できます。 <event-name> + "#" + <setting-name>or <event-id> + "#" + <setting-name>たとえば、CPU負荷イベントのサンプル間隔を1秒ごとに1回設定するには、 "jdk.CPULoad#period"という名前と"1 s"という値を使用します。 複数のイベントが同じ名前を使用する場合、たとえばイベント・クラスが複数のクラス・ローダーにロードされ、それらの間に区別が必要な場合、名前は"56#period"になります。 イベントのIDは、EventType.getId()メソッドを呼び出して取得され、イベントが登録されているJava Virtual Machine (JVM)インスタンスに対して有効です。使用可能なイベント名のリストは、 FlightRecorder.getEventTypes()およびEventType.getName()を起動することによって取得されます。 イベント・タイプに使用可能な設定のリストは、EventType.getSettingDescriptors()およびValueDescriptor.getName()を起動することで取得されます。- パラメータ:
- recordingId- レコーディングのID
- settings-- nullではなく、設定する設定の名前値マップ
- 例外:
- IllegalArgumentException- 指定したIDのレコーディングが存在しない場合
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("control")がない場合
- 関連項目:
- Recording.getId()
 
 - 
setRecordingOptionsvoid setRecordingOptions(long recordingId, Map<String,String> options) throws IllegalArgumentExceptionレコーディング・オプション(たとえば、データを保持する宛先ファイルと期間などです。)を構成します。使用できるオプションおよび値の詳細は、 FlightRecorderMXBeanを参照してください。 値をnullに設定すると、値がデフォルト値に戻ります。- パラメータ:
- recordingId- オプションを設定するレコーディングのID
- options- 設定する設定の名前/値マップ(- nullではありません)
- 例外:
- IllegalArgumentException- 指定したIDのレコーディングが存在しない場合
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("control")がない場合、またはオプションに、呼び出し元が操作を許可されていないファイルが含まれている場合。
- 関連項目:
- Recording.getId()
 
 - 
getRecordingsList<RecordingInfo> getRecordings() 必ずしも実行されているとはかぎらず、使用可能なレコーディングのリストを返します。MBeanServerアクセス: RecordingInfoのマップされたタイプは、RecordingInfo.fromメソッドで指定された属性を持つCompositeDataです。- 戻り値:
- nullではなく、レコーディングのリスト
- 例外:
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("monitor")がない場合
- 関連項目:
- RecordingInfo,- Recording
 
 - 
getConfigurationsList<ConfigurationInfo> getConfigurations() このJava Virtual Machine (JVM)の事前定義された構成のリストを返します。MBeanServerアクセス: ConfigurationInfoのマップされたタイプは、ConfigurationInfo.fromメソッドで指定された属性を持つCompositeDataです。- 戻り値:
- nullではなく、事前定義された構成のリスト
- 例外:
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("monitor")がない場合
- 関連項目:
- ConfigurationInfo,- Configuration
 
 - 
getEventTypesList<EventTypeInfo> getEventTypes() 現在登録されているイベント・タイプのリストを返します。MBeanServerアクセス: EventTypeInfoのマップされたタイプは、EventTypeInfo.fromメソッドで指定された属性を持つCompositeDataです。- 戻り値:
- nullではなく、登録されたイベント・タイプのリスト
- 例外:
- SecurityException- セキュリティ・マネージャが存在し、呼び出し元に- ManagementPermission("monitor")がない場合
- 関連項目:
- EventTypeInfo,- EventType
 
 - 
copyTovoid copyTo(long recordingId, String outputFile) throws IOException, SecurityException指定されたファイルにレコーディング・データを書き込みます。このメソッドが別のプロセスからリモートに呼び出された場合、ターゲットJava Virtual Machine (JVM)が実行されているマシン上の outputFileという名前のファイルにデータが書き込まれます。 ファイルのロケーションが相対パスの場合、ターゲットJVMが起動された作業ディレクトリを基準とした相対パスになります。- パラメータ:
- recordingId- データをダンプするレコーディングのID
- outputFile- データが書き込まれるシステム依存のファイル名(- nullではありません)
- 例外:
- IOException- I/Oエラー(たとえば、無効なパスです)のためにレコーディングをダンプできない場合
- IllegalArgumentException- 指定したIDのレコーディングが存在しない場合
- IllegalStateException- レコーディングがまだ開始されていないか、すでに閉じられている場合
- SecurityException- セキュリティ・マネージャが存在し、その- SecurityManager.checkWrite(java.lang.String)メソッドが指定されたファイルへの書き込みアクセスを拒否した場合、または呼び出し元に- ManagmentPermission("control")がない場合
- 関連項目:
- Path.toString(),- Recording.dump(java.nio.file.Path)
 
 
- 
 
-