模块 jdk.jfr

类 RecordingFile

java.lang.Object
jdk.jfr.consumer.RecordingFile
所有已实现的接口:
Closeable , AutoCloseable

public final class RecordingFile extends Object implements Closeable
录音文件。

以下示例显示如何读取和打印记录文件中的所有事件。

try (RecordingFile recordingFile = new RecordingFile(Paths.get("recording.jfr"))) {
  while (recordingFile.hasMoreEvents()) {
    RecordedEvent event = recordingFile.readEvent();
    System.out.println(event);
  }
}
 
自从:
9
  • 构造方法详细信息

    • RecordingFile

      public RecordingFile(Path  file) throws IOException
      创建录音文件。

      只应使用来源可靠的录音文件。

      参数:
      file - 要打开的文件的路径,而不是 null
      抛出:
      IOException - 如果它不是有效的记录文件,或者发生了 I/O 错误
      NoSuchFileException - 如果无法找到 file
      SecurityException - 如果安全管理器存在且其 checkRead 方法拒绝对该文件的读取访问。
  • 方法详情

    • readEvent

      public RecordedEvent  readEvent() throws IOException
      读取记录中的下一个事件。
      返回:
      下一个事件,不是null
      抛出:
      EOFException - 如果记录文件中不存在更多事件
      IOException - 如果发生 I/O 错误
      参见:
    • hasMoreEvents

      public boolean hasMoreEvents()
      如果记录文件中存在未读事件,则返回 true,否则返回 false
      返回:
      true 如果录音中存在未读事件,false 否则。
    • readEventTypes

      public List <EventType > readEventTypes() throws IOException
      返回此记录中所有事件类型的列表。
      返回:
      事件类型列表,而不是null
      抛出:
      IOException - 如果在读取文件时发生 I/O 错误
      参见:
    • close

      public void close() throws IOException
      关闭此录制文件并释放与其关联的所有系统资源。
      指定者:
      close 在接口 AutoCloseable
      指定者:
      close 在接口 Closeable
      抛出:
      IOException - 如果发生 I/O 错误
    • write

      public void write(Path  destination, Predicate <RecordedEvent > filter) throws IOException
      过滤掉事件并将它们写入新文件。
      参数:
      destination - 应该写入新文件的路径,而不是 null
      filter - 确定是否应包含事件的过滤器,而不是 null
      抛出:
      IOException - 如果发生 I/O 错误,则不是飞行记录器文件或无法解析的 JFR 文件版本
      SecurityException - 如果安全管理器存在且其 checkWrite 方法拒绝对文件的写访问
      自从:
      19
    • readAllEvents

      public static List <RecordedEvent > readAllEvents(Path  path) throws IOException
      返回文件中所有事件的列表。

      此方法适用于方便在单个操作中读取所有事件的简单情况。它不适用于读取大文件。

      只应使用来源可靠的录音文件。

      参数:
      path - 文件的路径,而不是 null
      返回:
      文件中的事件作为 List 对象; List 是否可修改取决于实现,因此未指定,而不是 null
      抛出:
      IOException - 如果发生 I/O 错误,则不是飞行记录器文件或无法解析的 JFR 文件版本
      SecurityException - 如果安全管理器存在且其 checkRead 方法拒绝对该文件的读取访问。