Changes

Jump to: navigation, search

Telemetry/Experiments

1,698 bytes added, 22:14, 28 August 2015
Document engineering requirements for telemetry experiments to pass review
== Engineering ==
Experiments must be developed in are a public source repository and must be reviewed just as if they were part special type of Firefox on [https://developer.mozilla.org/en-centralUS/Add-ons/Bootstrapped_extensions restartless extension]. They can do anything a regular restartless extension can do.
=== Repository and Reviews === Experiments are restartless must be developed in the public [http://hg.mozilla.xpi org/webtools/telemetry-experiment-server telemetry experiment server] source repository and can do anything must be reviewed just as if they were part of Firefox on mozilla-central. To request reviews, file a normal bug against the [https://bugzilla.mozilla.org/enter_bug.cgi?product=Firefox%20Health%20Report&component=Client%3A%20Desktop Firefox extension can doHealth Report product, Desktop Client component]. === <code>install. In rdf</code> === Experiments, like other restartless extensions, should have an <code>install.rdf</code> manifest file. However, unlike other extensions, emthe [https://developer.mozilla.org/en-US/Add-ons/Install_Manifests#type type] must be set to 128. === <code>manifest.json</code> === Unlike other restartless extensions, experiments must have a top-level <code>manifest.json</code> file. The <code>manifest.json</code> format is not currently documented, though examples can be found by looking at past experiments [http://hg.mozilla.org/webtools/telemetry-experiment-server in the telemetry-experiment-server mercurial repo]. In particular, note that the <code>name</code> field is visible to end users, so it should be  ==128 = <code>DOCUMENTATION</code> file === A DOCUMENTATION file must be included with the experiment, detailing the URL endpoints and data/data format usedby the experiment. === Extension Lifecycle === Use the bootstrap.js <code>startup</code> method to kick off experiments, rather than the <code>install</code> method, so that the experiment will try again if it's aborted by Firefox shutting down. Experiments must uninstall themselves when done, which must include cleaning up resources and calling <code>Experiments.disableExperiment("FROM_API")</code>.
== Staging ==
95
edits

Navigation menu