streams.query。
还没有应用的工作区,这里会显示如何创建应用。
行的类型
标题下方的页签决定一行代表什么。一行是它所属实体的最新版本:多次上报的视图只出现一次,显示它最后的计数。编写查询
查询编辑器默认收起。选择 展开查询编辑器,或选择 代码、构造器,即可展开。 代码 接受字段查询:对当前类型的字段做比较,用AND 连接。
时长以纳秒保存,因此
1000000000 是一秒。表格单元格会按合适的单位显示它们。
不是比较的词,会在当前类型的文本列中查找,例如用户、页面、错误消息和请求 URL。对当前类型没有的字段、或对保存 JSON 文档的字段做的比较,会被忽略,并显示为 已忽略。
构造器 把同一个查询显示为筛选条件。选择 条件,再选择字段、比较方式和值。
用 运行查询 运行,或在编辑器中按 ⌘ Enter 或 Ctrl+Enter。刷新 会重新读取结果。时间范围位于运行按钮旁边,探索页默认打开最近 24 小时。
字段
结果旁边的 字段 列表包含当前类型的全部字段,分为三组:显示字段,即表格的列;索引字段,筛选时不必读取每一行;以及 其他字段。在 查找字段 中输入内容可以缩小列表。- 点击字段名称,会列出它最常见的取值及数量,统计范围是查询匹配的行。
- 只看此值 和 排除此值 会把对应的比较加入查询。再次选择已筛选的值即可移除筛选。
- 字段旁的眼睛图标把它加入表格或从表格移除。恢复默认列 会重置表格。
- 字段旁的加号按钮会在查询中为该字段开始一个比较。
结果与直方图
表格每个结果一行,最新的在前,每行最前面是时间。出问题的行在左边缘带有标记。可选择每页 100、200、500、1,000、2,000 或 5,000 行,并用 上一页 和 下一页 翻页。 表格上方的直方图统计查询在所选时间范围内匹配的全部行,而不仅是已加载的一页,并说明每根柱代表多少行。拖动选择柱子可以缩小时间范围。选择 隐藏直方图 可以关闭它,这个选择会被记住。把行画成数字
结果上方的 可视化为 选择查询所匹配的行如何绘制。列表 是行的表格,默认打开。其余四种是在所选时间范围内对查询匹配的全部行统计出的数字,而不是对已加载的一页统计,所以与旁边的列表一致。
地图可以从整个世界放大到八倍。用地图角落的按钮、滚轮或双指捏合(以指针所在处为中心)、双击放大,拖动放大后的地图来移动它。地图获得焦点后,
+ 和 - 缩放,0 显示整个世界,方向键移动放大后的地图。小到看不见的国家(例如新加坡、马耳他)会标在它所在的位置。把指针放在国家上可以看到它的数字。轮廓来自 Natural Earth 的 1:10m 国家边界,经过简化,采用中国的国界口径,不含南极洲。台湾、香港、澳门是中国的一部分:台湾单独成块、四周不画国界线,所以它的行可以单独着色。拨测里按地点的可用性地图使用同样的轮廓。
选择 Top 列表或表格里的一个分组,会把查询缩小到它;再选一次则取消。选择表格的列头会按该列排序:由服务端按这一列排名,所以看到的是该顺序的前几行,而不是另一种顺序的前几行再排序。点击时序图会固定它的提示,提示里的 Include 和 Exclude 会把查询缩小到指针下的序列,或把它排除。拖动选择图表可以缩小时间范围,与直方图相同。
当数字是 Largest Contentful Paint、Interaction to Next Paint 或 Cumulative Layout Shift 的某个水平值时,图表按秒、毫秒或分数绘制,并用两条虚线标出指标从良好变为较差的位置(2.5 秒和 4 秒、200 毫秒和 500 毫秒、0.1 和 0.25);Top 列表和表格里的数字按等级着色。
统计什么
把行画成数字时,查询下方会出现一行设置。每次修改立即生效。- 度量 是字段的函数。
count统计行数。count_distinct统计字段不同取值的个数,例如session.id或usr.id。sum、avg、min、max、p50、p75、p90、p95和p99取数值字段,百分位是估计值。时长以纳秒存储,显示时使用合适的单位。选择一个度量可以修改它;选择 度量 可以给表格添加一个。 - 分组 按一个字段的取值区分各行,再分一层 按第二个字段区分。该字段没有值的行归在 (无) 下。度量值、时间和 JSON 文档不能用来分组。
- 时间桶 是时序里一个点的长度。自动 把范围切成约三十个点,每个点从页面时钟上该长度的整数倍处开始。只提供能把范围切成 2 到 300 个点的长度。
- 取前 是绘制多少个分组:时序 3 到 20 个,Top 列表和表格 5 到 100 个。
viz 是 timeseries、toplist、table 或 map(列表不写);m 是一个度量,例如 count 或 p75:view.performance.lcp.timestamp,每个度量写一次;by 是一个分组字段,每个字段写一次;bucket 是 5m、1h 这样的长度;top 是分组个数;sort 和 dir 给表格排序。切换类型会保留可视化方式,并去掉 m、by 和 sort,因为它们属于某一类型的字段。数字通过 aggregate 读取。
打开一行
点击一行,或用方向键移动后按Enter,会在列表旁的抽屉中打开它。抽屉先显示该类型最能说明问题的事实,然后是这一行的全部字段,错误还会显示堆栈。拖动抽屉左边缘可以调整宽度。
J和K,或抽屉头部的箭头,跳到列表中的下一行和上一行。- 打开会话 会打开这一行所属的会话。
- 浏览器的视图会以较宽的抽屉打开,先显示 加载瀑布:它发出的请求和阻塞它的长任务,画在从它开始算起的同一条时间轴上。它的字段在下一个分区。见视图的加载。
- 关闭抽屉后,焦点回到这一行。
打开会话
会话页从探索页打开,包含:- 会话录制了 DOM 回放时显示 回放播放器,否则显示 动作时间线。回放的时间尺上,每个错误有一道刻度(红色),每个带受挫信号的操作有一道(橙色),第一页之后的每次换页有一道(灰色);
- 回放下面的 开发者工具:错误、网络 和 性能,见下文;
- 用户信息:用户、设备、位置、IP 地址、应用、环境、版本和时长;
- 页面:这次访问的第一个和最后一个页面;发现的问题:错误、崩溃、受挫信号和长任务;
- 事件时间线:会话中所有视图、操作、请求、错误和长任务,按发生顺序排列;
- 关联链路:会话的某个请求携带了其 ID 的后端链路(直接关联);没有请求携带 ID 时,则是会话运行期间在跑的链路(时间相关)。每条链路都可以在 链路 中打开。
开发者工具
回放下面有三个标签,各带计数:错误、网络 和 性能。它们读取会话自己的事件,并且跟着回放走。- 回放所在的那一行(在回放那一刻之前发生的最后一行)左边亮着一条线。回放播放或被拖动时,列表会滚动保持它在视野里,列表下面的页面不会跟着动。
- 点一行,回放跳到那一刻并暂停。时间是从录制开头起算的分和秒,和进度条是同一把尺。没有录制回放的会话没有什么可跟随、可跳转的:时间从会话开始起算,行只说明发生了什么。
- 错误 按发生顺序列出会话的错误:时间、类型、信息,以及这个错误归入的 issue,issue 在 错误 里打开。会话遇到过错误时,工具打开在这个标签上,没有时打开在 网络。
- 网络 列出一个视图的请求:时间、方法、主机和路径、状态、类型、耗时和大小,每行还有一根时间条,画在这个视图的请求所用的时间上。视图 选择视图。没有选择时,是回放所在的视图,跟随回放 可以换回来。全部视图 列出会话的所有请求。显示 把列表收窄到慢的请求(500 ms 以上)或失败的请求。瀑布 像探索页那样展示这个视图的加载(见一次视图的加载)。
- 性能 给会话的每个视图一行:LCP、INP 和 CLS(用它评级的颜色),以及这个视图遇到的请求数和长任务数。点一行,在 网络 里打开这个视图的瀑布。
tab、view、display 和 show),回放打开的时刻也在地址里(at,自纪元起的微秒数),回放停在那里,直到播放。受挫 里的链接就这样打开会话。
页签、分享与地址
探索页使用与 日志 相同的查询页签:可以并排打开多个查询、重命名页签并拆分页面。页面地址就是屏幕上的查询,它包含类型(type)、字段查询(q)、时间范围(time),以及把行画成数字时的方式(见把行画成数字),所以复制地址栏就能分享查询。分享 会复制一个链接,并可选择链接的时间范围。
探索页读取什么
行存放在 RUM 数据流中。查询经由查询引擎执行,遮盖规则和限制与 日志 相同;统计耗时过长时会提示不可用。列及其单位与事件格式中的字段一致。RUM 事件格式
列背后的字段。
RUM 应用
创建应用并把它的 Token 交给 SDK。