记录并直观呈现轨迹

本页介绍如何记录并直观呈现紫红色的轨迹 装有 Fuchsia 跟踪系统的设备。

前提条件

许多现有的 Fuchsia 组件都已注册为跟踪提供程序,其 跟踪数据通常可以提供足够的系统概览。因此 只需要记录一般轨迹(例如 ),您可以继续学习下面几部分。不过,如果您希望 要从特定组件收集其他自定义跟踪事件,您需要 请先完成以下任务:

录制轨迹

如需从宿主机录制 Fuchsia 设备上的跟踪记录,请执行以下操作: 运行以下命令:

ffx trace start --duration <SECONDS>

此命令会使用默认设置开始跟踪,捕获的是 目标设备的总体概览。

轨迹持续指定时长(或直到 ENTER 键触发) )。跟踪完成后, 跟踪数据会自动保存到trace.fxt文件 当前目录(可通过指定 --output 标志来更改此目录; 例如 ffx trace start --output <FILE_PATH>)。直观呈现跟踪记录 存储在此文件中的结果,请参阅可视化跟踪记录 部分。

直观呈现跟踪记录

Fuchsia 跟踪记录格式 (.fxt) 是 Fuchsia 的 二进制格式,可直接编码原始轨迹数据。接收者 直观呈现 .fxt 跟踪文件,您可以使用 Perfetto 查看器

请执行以下操作:

  1. 访问 Perfetto 查看器 网站。
  2. 点击导航栏中的 Open trace file
  3. 从主机中选择 .fxt 文件。

此查看器还允许您使用 SQL 来 查询跟踪记录数据

类别

通过类别,您可以控制要查看的活动。例如:

  • 使用所有默认类别和“cat”进行跟踪:
  ffx trace start --categories '#default,cat'
  • 没有默认值的跟踪记录,只有调度器和线程/进程数据:
  ffx trace start -–categories “kernel:sched,kernel:meta”

实用类别

kernel:sched + kernel:meta

有关每个 CPU 上正在运行的内容的高粒度概览

kernel:sched 信息

kernel:ipc

为每个 FIDL 调用发出一个事件,并将其与数据流连接

core:ipc 信息

kernel:syscall

为每个系统调用系统发出事件

Gfx 信息

Gfx

查看帧时间细分数据

Gfx 信息