实现遥测

实施前的注意事项:

  • 了解遥测的重要性,它不仅仅是功能完成的标志。

  • 遥测的使用者是数据科学团队。

  • 如有疑问,请参考以下链接中的示例实现、文档和数据审查格式。

  • 避免使用 SharedPreferences。

  • 编写单元测试。

实施遥测前的步骤:

  1. 联系产品团队了解我们正在添加遥测的功能。

  2. 联系数据科学团队以获取完整需求。这包括

  • 数据科学团队期望从哪些类别获取数据?

  • 数据科学团队在每个类别中期望哪些遥测数据?

  • 每个遥测数据的数据类型是什么?

  1. 与数据科学团队合作,提高或降低期望值。细化需求,直到每个遥测数据都明确指定。这包括

  • 告知数据科学团队哪些遥测数据无法实现。(如果存在)

  • 告知数据科学团队他们可能不知道的其他可能的遥测数据。

  • 告知数据科学团队哪些数据可能没有收集意义。(例如:B 总是发生在 A 发生时)

  • 帮助数据科学团队收集尽可能好的遥测数据。

  1. 如有任何疑问,请咨询 Glean 团队。(例如:使用哪种数据类型)

实施 Glean 遥测事件的步骤

  • 添加带有键的事件的完整示例可以在 这里(Android 组件)、这里(Fenix)和 这里(Glean 注解)找到。

  1. metrics.yaml 中创建一个事件,并执行项目重建以生成事件。

  2. 要添加功能标签,请参见 此处 的步骤。

  3. 从代码中的适当位置使用生成的相应方法发送事件(例如 GeneratedClassMetrics.generatedEvent.record())。

  4. 创建拉取请求。

  5. 提交数据审查(此处示例)。还有一个 用于生成数据审查请求的命令行工具

  6. 使用数据审查更新 metrics.yaml

  7. 对于启动指标,请确保 手动测试它

审查

请参见 此处 的示例。

  • 添加了解遥测的开发人员来审查您的更改。

  • 如有需要,添加 Glean 团队的开发人员作为审阅者。

  • 数据审查格式 此处。(此处示例

合并后

  1. 请注意,当您的遥测更改进入 Beta/发布版时,需要重新审视。

  • 对于事件,请转到 Glean 词典并找到您要验证的事件。点击页面底部的 Looker 链接,确认事件是否正在报告。(例如,对于 credit_cards.modified,Glean 词典链接是 https://dictionary.telemetry.mozilla.org/apps/fenix/metrics/credit_cards_modified。在底部点击 Looker 旁边的“credit_cards.modified”链接以查看事件计数)

  • 对于指标,请创建一个查询(例如:https://sql.telemetry.mozilla.org/queries/82373)以确认指标是否正在报告。

  1. 与数据科学团队合作,确保他们看到的数据满足他们的需求。

更新即将过期的遥测

请参见 此处 的步骤。