Revision control

Copy as Markdown

Other Tools

# Notes on Glean/Telemetry in Thunderbird
## Hooking into the build process
The comm-central definitions in `comm/mail/metrics.yaml`,
`comm/mail/pings.yaml` and `comm/mail/tags.yaml` are used _in addition_ to
their mozilla-central counterparts..
As part of the mozilla-central telemetry build process, scripts are used to
generate the C++ files which define the probe registry (enums, string tables
etc).
Because of this code generation, the extra comm-central probe definitions
need to be included when the mozilla-central Glean is built.
This is done by setting `MOZ_GLEAN_EXTRA_*` config values. You can
see these in `comm/mail/moz.configure`.
These config values are used by `toolkit/components/glean/moz.build`
(mozilla-central) to pass the extra probe definitions to the code
generation scripts.
The build scripts can be found under `toolkit/components/telemetry/build_scripts`.
They are written in Python.
## Naming probes
To avoid clashing with the mozilla-central probes, we'll be pretty liberal
about slapping on prefixes to our definitions.
## Compile-time switches
Telemetry is compiled in by default for Nightly and Official builds. To enable for
unofficial builds, add the following line to your mozconfig (lack of a value is
intentional):
ac_add_options MOZ_TELEMETRY_REPORTING=
## Runtime prefs for testing
There are a few `user.js` settings you'll want to set up for enabling telemetry local builds:
### Send telemetry to a local server
To set the Glean end point to a locally-running http server on port 8080, use:
```
user_pref("telemetry.fog.test.localhost_port", 8080);
user_pref("datareporting.healthreport.uploadEnabled", true);
```
For a simple test server, try https://github.com/mozilla/gzipServer
### Bypass data policy checks
The data policy checks make sure the user has been shown and
has accepted the data policy. Bypass them with:
```
user_pref("datareporting.policy.dataSubmissionPolicyBypassNotification",true);
user_pref("datareporting.policy.dataSubmissionEnabled", true);
```
### Enable telemetry tracing
## Troubleshooting
### Sending test pings
Go to about:glean - you can find it on Help | Troubleshooting information (about:support).
## Further documentation
The Glean documentation is at: