消息系统和 onboarding 遥测¶
这份文档(结合Glean 字典中消息系统 ping 部分)现在是查找消息系统和 onboarding 遥测信息的首选位置。出于历史原因,一些相关的文档仍然与活动流文档混合在一起。如果您在此处找不到所需内容,请查看我们收集的旧指标和旧数据字典。
使用 Glean 收集¶
消息系统中的所有代码都将 JSON ping 对象传递到几个中心位置。它可能会在传递过程中添加归因注释,或者在发送之前由一些策略例程进行调整。在发送到 Glean 之前,JSON 将会进行进一步的轻微转换.
消息系统数据收集的设计¶
数据发送在消息系统 Ping中。您获得的消息系统 Ping 使用Ping 类型记录。如果您希望扩展数据收集,请考虑数据是否属于messaging-system
ping(通常是在数据对 ping 本身及时时),或者它是否是更一般的收集,在这种情况下,数据可以放在默认的send_in_pings
条目中,它是metrics
ping。在任何一种情况下,您都可以在metrics.yaml文件中添加指标定义。
添加或更改遥测¶
可以在活动流遥测文档中找到一般流程概述。
请注意,当您需要添加新的指标(即 JSON 密钥)时,必须将其添加到browser/components/newtab/metrics.yaml中,以便在 Glean 数据中正确显示。
避免添加任何新的嵌套对象,因为 Glean 无法处理这些对象。在最好的情况下,任何此类添加将在发送之前被展平或转换为字符串。
监控 FxMS 遥测健康状况¶
OMC 团队拥有一个用于 FxMS 桌面 Glean 遥测的OpMon 仪表板,并带有警报。请注意,它一次只能显示一个通道,以下是Windows 发布版的链接。仪表板在firefox-messaging-system.toml中指定,阅读源代码可以帮助阐明其确切含义。我们是此文件的所有者,鼓励我们根据需要对其进行调整,尽管最好获得数据科学人员的审查。
目前的计划是在我们的每周分类会议中作为小组审查 OpMon 仪表板,将任何看起来不寻常的事情记录到我们的Google 文档日志中,如果我们想要进一步调查,则提交阻止fxms-glean
的 Bug。
仪表板配置为在各种情况下发出警报,这些警报可以在仪表板底部看到。在撰写本文时,警报有一些需要清理的噪音,然后我们才能自动对其采取行动。
本地调试¶
本地调试包括将遥测记录到控制台和/或使用 Glean 的人体工程学测试 API 和/或 Glean 调试 Ping 查看器,您可以在about:glean
上了解更多信息。
了解您将生成的遥测的最简单方法是打开日志记录。在about:config
中,将browser.newtabpage.activity-stream.telemetry
设置为true
,并将messaging-system.log
设置为debug
。
您现在可以使用ASRouter 开发者工具与在浏览器控制台中生成的日志一起操作您关心的消息。
要使用about:glean
监控事件,可以使用以下 mach 命令。这将打开遥测日志记录并打开about:glean
。MOZ_LOG="glean_core::upload:3" ./mach run --setpref browser.newtabpage.activity-stream.telemetry=true about:glean
单击步骤 3 中的复选框(“可选。如果希望在提交 Ping 时也记录 Ping,请选中前面的复选框…”)。
单击步骤 4 中的“应用设置并提交 Ping”按钮。
访问
about:welcome
(Ping 可能需要一段时间才会显示在终端中)。
附录:Glean 简要介绍,适用于此项目(由 Chris H-C 提供)¶
Glean 是 Mozilla 为 Mozilla 开发的数据收集库。您定义诸如计数、计时等指标,并将这些指标打包成 Ping,Ping 是发送到我们服务器的有效负载。
您可以在 Glean 字典的桌面部分查看当前的FxMS Glean 指标和 Ping。将 Glean 嵌入到 Firefox 桌面的层称为Firefox on Glean (FOG)。
文档将自动生成并托管在 Glean 字典上,因此请编写冗长的富文本描述并使用 Glean 注释对其进行补充。
摄取模式会自动生成。您可以从落地新的 Ping 到查询发送的数据在两天内。
犯错了吗?别担心。更改快速且简单,并在一天内反映在接收到的数据中。
如果您有任何疑问,Glean 团队可在 Matrix 上的
#glean:mozilla.org
频道和 Slack 上的#data-help
频道上提供跨多个时区的支持。