Class RecordingFile
java.lang.Object
jdk.jfr.consumer.RecordingFile
- All Implemented Interfaces:
Closeable
,AutoCloseable
A recording file.
The following example shows how read and print all events in a recording file.
try (RecordingFile recordingFile = new RecordingFile(Paths.get("recording.jfr"))) {
while (recordingFile.hasMoreEvents()) {
RecordedEvent event = recordingFile.readEvent();
System.out.println(event);
}
}
- Since:
- 9
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Closes this recording file and releases any system resources that are associated with it.boolean
Returnstrue
if unread events exist in the recording file,false
otherwise.static List
<RecordedEvent> readAllEvents
(Path path) Returns a list of all events in a file.Reads the next event in the recording.Returns a list of all event types in this recording.void
write
(Path destination, Predicate<RecordedEvent> filter) Filter out events and write them to a new file.
-
Constructor Details
-
RecordingFile
Creates a recording file.Only recording files from trusted sources should be used.
- Parameters:
file
- the path of the file to open, notnull
- Throws:
IOException
- if it's not a valid recording file, or an I/O error occurredNoSuchFileException
- if thefile
can't be located
-
-
Method Details
-
readEvent
Reads the next event in the recording.- Returns:
- the next event, not
null
- Throws:
EOFException
- if no more events exist in the recording fileIOException
- if an I/O error occurs- See Also:
-
hasMoreEvents
public boolean hasMoreEvents()Returnstrue
if unread events exist in the recording file,false
otherwise.- Returns:
true
if unread events exist in the recording,false
otherwise.
-
readEventTypes
Returns a list of all event types in this recording.- Returns:
- a list of event types, not
null
- Throws:
IOException
- if an I/O error occurred while reading from the file- See Also:
-
close
Closes this recording file and releases any system resources that are associated with it.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
- if an I/O error occurred
-
write
Filter out events and write them to a new file.- Parameters:
destination
- path where the new file should be written, notnull
filter
- filter that determines if an event should be included, notnull
- Throws:
IOException
- if an I/O error occurred, it's not a Flight Recorder file or a version of a JFR file that can't be parsed- Since:
- 19
-
readAllEvents
Returns a list of all events in a file.This method is intended for simple cases where it's convenient to read all events in a single operation. It isn't intended for reading large files.
Only recording files from trusted sources should be used.
- Parameters:
path
- the path to the file, notnull
- Returns:
- the events from the file as a
List
object; whether theList
is modifiable or not is implementation dependent and therefore not specified, notnull
- Throws:
IOException
- if an I/O error occurred, it's not a Flight Recorder file or a version of a JFR file that can't be parsed
-