Confirmed users
1,225
edits
(→Framework Decision: refining the Framework chapter) |
(→The Framework: Reorganizing the chapters) |
||
Line 26: | Line 26: | ||
Furthermore, [https://www.periscopedata.com/ Periscope] can be used to formulate SQL queries against the BigQuery Database. Periscope is a third party toolmthat can be used to get more sophisticated reports. Additional tools exist to create reports, that could be used by the CD trains, if they deemed they are necessary. | Furthermore, [https://www.periscopedata.com/ Periscope] can be used to formulate SQL queries against the BigQuery Database. Periscope is a third party toolmthat can be used to get more sophisticated reports. Additional tools exist to create reports, that could be used by the CD trains, if they deemed they are necessary. | ||
== Additional Tools and Activities == | |||
Apart from identifying what is the best toolchain and framework for being used in CD trains, the CD Metrics Team has been working in different activities to ease adoption, ensure consistency and help with the visualisation activities. | |||
* Ease adoption: By Implementing a library for Rust and JS that simplifies the adoption of Google Analytics by the trains. (Note: The Rust library could be also used in other programming languages) | |||
* Ensure consistency: By documenting the parameters that can be used for collection of events | |||
* Ease visualisation: By evaluating Reporting/visualization tools to ensure that metric data can be easily analyzed by the trains and providing some example charts. | |||
In other words, we have done different tasks to ensure all the trains can onboard easily and send information in a consistent way that can be used to get easily dashboards/reports that are also consistent cross-train. | |||
== Project Status and onboarding on the metrics framework == | |||
CD Metrics is a framework to ease data collection and some tools to ease data manipulation and visualization. The target of the metrics team is not creating reports on behalf of the trains but giving them access to the data and support to getting started with the framework tools. I.e. data ownership relies on the trains themselves: they are the ones that have full access to the data so they can view/query/report as they see fit. | |||
A first version of the framework is already available, so any CD train could start the on boarding now. For doing so, we have developed a set of guidelines to help with the on boarding process to ingrate CD Metrics in your train: '''[[Connected_Devices/Projects/Metrics/Integration|CD Metrics Integration]]''' | |||
== Why Not Telemetry? == | |||
The initial approach we explored was leveraging the [http://gecko.readthedocs.io/en/latest/toolkit/components/telemetry/telemetry/index.html unified Telemetry Pipeline] to send data to the metrics infrastructure and process it. The idea was reusing an architecture already existing and widely used at Mozilla. In that way could rely on the capability the platform has for validating, sanitizing and even automatically analyzing device data. | |||
After some months working to ensure the information sent was consistent, relying on the [https://gecko.readthedocs.io/en/latest/toolkit/components/telemetry/telemetry/common-ping.html Telemetry "Ping"] mechanism already used in many Mozilla products and defining one [https://docs.google.com/document/d/1nMdnuYWGSXRzLramzzAWpR78ZRA5645bpWAWKIyTvp0/edit common Connected Devices Ping Format proposal] that could be implemented by each train, we changed our approach. | |||
The benefits of using Telemetry are clear for Gecko-based projects, but this might not apply to the CD trains: | |||
* The CD projects are intended to be initially small projects and Google Analytics and other 3rd party providers offer frameworks with lower learning and adoption curves. Using Telemetry could be an overkill to them. | |||
* Gecko and Telemetry are very coupled and some of the Telemetry advantages require Gecko. Indeed, some other projects in Mozilla that are not using Gecko have already started to use alternative solutions for Metrics. | |||
== Program Status == | == Program Status == |