-
Notifications
You must be signed in to change notification settings - Fork 13
Introduce Glean.js for collecting data #505
Conversation
5fcf66e
to
5d84744
Compare
This is now blocked by rollup/plugins#843 |
This ensures that the docs and the metrics code is regenerated when building the core-addon.
This guarantees Glean files get generated.
This fixes the warning (!) Plugin node-resolve: preferring built-in module 'util' over local alternative at '/home/dexter/rally-core-addon/node_modules/util/util.js', pass 'preferBuiltins: false' to disable this behavior or 'preferBuiltins: true' to disable this warning
This works around rollup/plugins#843. See the documentation: https://github.com/rollup/plugins/tree/master/packages/node-resolve#exportconditions
Glean is disabled by default when building the core-addon. The config-enable-glean option enables Glean. Note that, if Glean is not initialized, no metric recording happens, even if the Glean specific metrics APIs are called.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From a Glean integration standpoint this LGTM. Very exciting to see this reaching this status. 🎉
Unfortunately this "hack" is required because the add-ons pipeline does not enable consumers to customize the installed packages.
In the spirit of keeping this PR simple, this commit removes the pings definition file.
@rhelmer just a reminder about this one...thanks! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm! I assume this is so simple because glean.js is doing most of the heavy lifting (well, and those bits aren't implemented that you mentioned in the top comment).
scripts/setupTaskcluster.js
Outdated
import { promisify } from "util"; | ||
|
||
// Define an async/await version of "exec". | ||
const execAsync = promisify(exec.exec); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Huh, why do you want this to be async? Doesn't seem like it matters here, and it's not being await
'd or anything.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No real reason, it was copy 🍝 !
Request for data collection review formAll questions are mandatory. You must receive review from a data steward peer on your responses to these questions before shipping new data collection.
This PR does not add any new data collection to the Core Add-on. Instead, it introduces Glean.js and stores the "rally id" in Glean.js.
Data collection currently happens using legacy telemetry in Firefox. We're migrating to Glean.
Yes, but we need to migrate to Glean.js to further evolve Rally.
This PR does not add any new data point. The Rally id/Pioneer id was already data-reviewed for Pioneer.
Documentation is generated by Glean and included in this PR.
All the populations currently covered by the Rally policy.
Collection is only enabled after user enrolls in Rally after onboarding.
Data will be analysed via notebooks to understand how the core addon behaves in the wild.
With key partners through their relative secure environments.
No. Data will be stored and analysed using internal tools. |
DATA COLLECTION REVIEW RESPONSE:
Yes.
Yes. This collection is part of Rally which can be turned on and off.
Yes, Ted Han is responsible.
Mixed categories. This is the addition of a data collection system (Glean.js) not a specific data collection.
Default off. Rally requires opt-in.
No.
Yes.
No. This collection is permanent. Result: datareview+ |
Fixes #117
This PR adds Glean.js as a dependency and enables documentation and metric code generation at build time, using the 'glean' command.
Important reviewer notes:
upload = true
. This only happens after user enrols in Rally.TODO:
Submit the onboarding ping.(Will happen as a separate PR)Collect(Will happen as a separate PR)study_join_selected
from this spreadsheet.Checklist for reviewer:
CHANGELOG.md
entry for any non-test change.