加载跟踪记录

本页面介绍了如何使用 Winscope 网页界面加载跟踪记录。

您可以在本地运行 Winscope 或通过网络服务器访问它。

如需在 Winscope 中加载已捕获的跟踪记录,请使用 Upload Traces 面板上传已保存的跟踪记录。点击 Upload another file 可上传更多跟踪记录,或点击 X 可移除已上传的跟踪记录。

在 Winscope 中上传跟踪记录

图 1. 在 Winscope 中上传跟踪记录。

点击 View traces 可查看已上传的跟踪记录。每个跟踪记录的标签页都会显示在窗口的顶部面板上。如果上传的文件包含相关跟踪记录,屏幕录制跟踪记录或屏幕截图的浮动视图会叠加在屏幕上。

如需了解详情,请参阅分析跟踪记录

解析警告和错误

Winscope 使用信息条显示加载跟踪记录时发现的问题,例如,当跟踪记录文件因数据过旧而被舍弃时。以下列表包含当前警告及其含义:

信息 说明
归档文件损坏 未能加载 ZIP 文件。通常,当 ZIP 文件为空(0 字节)时会出现这种情况。
<filename>:由于数据过旧而被舍弃 任何在下一个跟踪记录开始前超过 5 分钟完成的跟踪记录都会被舍弃。
<filename>:数据比 <time> 旧,因此被舍弃 根据找到的最新单调或启动时偏移,会舍弃偏移大于 5 秒的任何跟踪记录。
<filename>:被另一个类型为 <trace type> 的跟踪记录替换 如果等效跟踪记录(例如,跟踪记录和转储)存在于同一文件中,Winscope 会遵循以下规则:
  • Perfetto 跟踪记录会替换同一类型的旧版跟踪记录。
  • 屏幕录制会替换屏幕截图。
<filename>:被另一个相同类型的跟踪记录替换 如果同一文件中存在同一类型的跟踪记录,Winscope 会遵循以下规则:
  • Perfetto 跟踪记录会替换同一类型的旧版跟踪记录。
  • 最大的 Perfetto 跟踪记录会替换所有其他 Perfetto 跟踪记录。
  • 跟踪记录会替换 WindowManager 和 SurfaceFlinger 的转储。
<filename>:不支持的格式 由于 proto 无效或缺少 Winscope 解析器,无法解析旧版跟踪记录。
未能创建 <parser_name> 解析器:<error> Winscope 已识别跟踪记录解析器,但无法解析文件。请提交 Winscope bug 并附上跟踪记录。
无法直观呈现所有跟踪记录:未能初始化时间轴数据。请尝试移除一些跟踪记录。

Winscope 无法解析跟踪记录中的时间轴数据。请提交 Winscope bug 并附上跟踪记录

帧映射中发生错误:<error>

Winscope 无法映射不同跟踪记录之间的状态以进行导航。请提交 Winscope bug 并附上跟踪记录

<table> 中的一个或多个条目缺少 vsync_id 由于缺少 vsync ID 信息,因此未能加载 Perfetto 跟踪记录。请提交 Winscope bug 并附上跟踪记录
发现重复的 SF 图层 ID <layerId> - 将其作为“Duplicate”添加到层次结构中 SurfaceFlinger 跟踪记录包含两个具有相同 layerId 的图层。请提交 SurfaceFlinger bug 并附上跟踪记录
屏幕录制可能与其他跟踪记录不同步。元数据包含单调时间,而不是经过的时间 屏幕录制文件较旧,且使用无法同步的旧版元数据格式。使用较新版本的 Android 进行屏幕录制时,不应出现此问题。
无法解析所有过渡事件。“Transitions”查看器中可能缺少一些过渡事件。 无法解析旧版过渡跟踪记录,因此查看器中可能缺少数据。
<filename><error> 其他未映射的错误。请提交 Winscope bug 并附上跟踪记录