QA/Desktop Firefox/Telemetry Experiments: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(Created page with "= Short Summary = This wiki page will guide users on how to install a local telemetry experiment staging server which will install experiments that are saved as addons. When ...")
 
(Ading a link to another page with useful information)
 
(43 intermediate revisions by one other user not shown)
Line 1: Line 1:
= Short Summary =
This document has been moved to the following location:


This wiki page will guide users on how to install a local telemetry experiment staging server which will install experiments that are saved as addons. When installed correctly, launching Firefox will contact the staging sever, install the experiment and create a "Experiments" category under about:addons. The experiments will also be listed under about:support.
https://wiki.mozilla.org/QA/Telemetry


'''Quick Notes: '''
There's also other information about Telemetry Experiments here: https://wiki.mozilla.org/Telemetry/Experiments
 
* This guide assumes that you're using either OSX or Linux. I don't recommend trying this on Windows as you'll likely run into a few issues and spend more time debugging than installing a new distribution on a VM
* Telemetry Experiments is still being developed so some things might have changed. Please let me know if that's the case or you can edit the wiki yourself!
 
= Setup & Installation =
 
* The first step is to run the OSX m-c bootstrap, the command can be found in the link below: (right below '''One-Line Setup (Try This First!)''')
** https://developer.mozilla.org/en-US/docs/Developer_Guide/Build_Instructions/Mac_OS_X_Prerequisites
* Clone the telemetry experiment server using the following command:
** '''hg clone http://hg.mozilla.org/webtools/telemetry-experiment-server/'''
* Once cloned, a directory named '''telemetry-experiment-server''' should have been created
* Switch into the '''telemetry-experiment-server''' directory
* Checkout the latest branch using the following command:
** '''hg checkout <checkout branch #>''', Example: '''hg checkout 42b785b60c60'''
* Once you've checked out the latest branch, will need to install '''genshi''' as it's a prerequisite for building our local server
* To install '''genshi''' simply type '''pip install Genshi''' in the terminal and follow the onscreen directions
 
Once you've gone through all of the above steps, the next step is to create our local server using '''build.py'''
 
* Open '''build.py''' with your favorite text editor, '''vim''' was used in this guide ('''vim build.py''')
** Change: ''''xpiURL':''' to ''''http://localhost:8080/experiment.xpi''''
** Change: ''''channel':''' to the channel that you're currently testing in (nightly, aurora, beta, release)
* Once you've made the appropriate changes, save the file and run the following command:
** '''python build.py <your directory name> <"base URL">''' Example: '''python build.py exp1 "http://localhost:8080''' (should create a directory named '''exp1''')
* Switch into the directory that we've just created, in the above example we used '''exp1''' and run the following command:
** '''python -m SimpleHTTPServer 8080''' (you should now be able visit: http://localhost:8080
 
== Preferences ==
 
The following browser preferences need to be created/modified to get telemetry experiments working:
 
* In the Firefox URI field, type in '''about:config''' and click on '''I'll be careful, I promise!'''
** Change: '''"experiments.enabled" = true'''
** Change: '''"experiments.logging.level" = 0'''
** Change: '''"experiments.manifest.cert.checkAttributes" = false'''
** Change: '''"experiments.manifest.uri" =''' http://localhost:8080/firefox-manifest.json (this might differ depending on what you set your sever to earlier)
** Chnage: '''"experiments.force-sample-value" = 0.25''' (this value needs to match the '''sample:''' value found in '''firefox-manifest.json'''
 
== Logging ==
 
You'll need to enable the following logging feature under '''Developer Tools''':
 
* Toggle the '''Developer Tools'''
** Australis: Click the '''Open Menu''' and than click on '''Developer''' then '''Toggle Tools'''
* Once you have the '''Developer Tools''' opened, select '''Settings''' (gear icon)
[[File:SettingsDev.png]]
* Under '''Advanced Settings''', you'll need to enable the following option:
** Select: '''Enable chrome and addon debugging'''
 
Note: Depending on the channel you're currently on, it may appear as '''Enable chrome debugging'''
 
[[File:DevTools.png]]
 
Once you have enabled '''chrome and addon debugging''' you should start seeing log entries appearing under the '''Browser Console'''. A quick way to ensure that logging is working correctly:
 
* Go into '''about:config'''
* Enable/Disable the '''experiments.enabled''' preference (You'll get similar entries as shown in the image below)
 
<blockquote>
1397078500406 Browser.Experiments.Experiments TRACE Experiments #0::_toggleExperimentsEnabled(false) <br>
1397078500406 Browser.Experiments.Experiments TRACE Experiments #0::disableExperiment() <br>
1397078500406 Browser.Experiments.Experiments TRACE Experiments #0::_run <br>
1397078500407 Browser.Experiments.Experiments TRACE Experiments #0::_main iteration <br>
1397078500407 Browser.Experiments.Experiments TRACE Experiments #0::_evaluateExperiments <br>
1397078500411 Browser.Experiments.Experiments TRACE Experiments #0::_main finished, scheduling next run <br>
1397078501152 Browser.Experiments.Experiments TRACE Experiments #0::_toggleExperimentsEnabled(true) <br>
1397078501152 Browser.Experiments.Experiments TRACE Experiments #0::updateManifest() <br>
1397078501152 Browser.Experiments.Experiments TRACE Experiments #0::_run <br>
</blockquote>
 
== Troubleshooting ==
 
The following are some steps that you can try if you're having issues installing/launching the experiments using the staging server.
 
=== Deleting experiments.json ===
 
''' Note: The profile directory on your computer will differ but it should still be in the same path'''
 
* '''Windows:''' C:\Users\<current user>\AppData\Roaming\Mozilla\Firefox\Profiles\nae12udp.default
* '''OSX:''' /Users/<current user>/Library/Application Support/Firefox/Profiles/y35f3ueg.default
* '''Ubuntu:''' /home/<current user>/.mozilla/firefox/ezbdnu88.default/
 
Once you've deleted the current '''experiments.json''' file, re-run the browser and see if the experiment has been installed.
 
== Testing ==
 
The following section will outline all the area's that should be tested and checked during telemetry experiments testing.
 
=== Checklist ===
 
* Ensure that the current installed experiment is not being loaded inside the '''extensions.bootstrappedAddons''' preference in '''about:config'''. The '''extensions.bootstrappedAddons''' preference is the quick access cache that's used on startup to see what bootstrap extensions to load when Firefox launches.

Latest revision as of 14:27, 16 February 2015

This document has been moved to the following location:

https://wiki.mozilla.org/QA/Telemetry

There's also other information about Telemetry Experiments here: https://wiki.mozilla.org/Telemetry/Experiments