Privacy/Reviews/Telemetry/Measurements

From MozillaWiki
Jump to: navigation, search

As Telemetry matures and we add more types of data we want to measure, it is important to keep track of what we're gathering and how we're respecting users' privacy. This page lists all of the types of data collected and links to any risk analysis done for the specific measurements.

The current list of histograms collected is in toolkit/components/telemetry/TelemetryHistograms.h

Instead of full reviews on each major type of measurement, a lightweight risk analysis should be performed to quickly document the question each measurement answers as well as actions taken to minimize privacy risks.

Histograms

Histograms that are collected by telemetry are listed in TelemetryHistograms.h, and ones that have review are also listed in the table below.

Relevant Strings

Privacy Policy: http://www.mozilla.com/en-US/legal/privacy/firefox.html#telemetry

Opt-in strings:

7-8 
Would you like to help improve Firefox by automatically reporting memory usage, performance, and responsiveness to Mozilla? (link to patch)
9+ 
Will you help improve Firefox by sending anonymous information about performance, hardware characteristics, feature usage, and browser customizations to Mozilla? (link to patch)

Measurements flagged for Review

Data that's being collected potentially has privacy implications and must undergo a quick risk analysis. These measurements are listed below including any outcomes from the risk analysis.

Get the lightweight-review template here

Undeployed (Not yet in Nightly/Aurora/Beta/Release)

Not yet deployed Measurement Review Status Data Format Sample Notes
Layers backend [RESOLVED] in bug ("Direct3D 9" "Direct3D 10" "OpenGL" "Basic") bug 721785
Add telemetry for startup crash detection [RESOLVED] covered by opt-in bug 723802
SSL Certificates and Errors [ON TRACK] bug 707275 - not yet landed
Encountered Plugin Types [ON TRACK] open risks not yet landed
Profile Age [DROPPED] out of scope for telemetry not yet landed
Default Browser Status [RESOLVED] (19-Oct-2011) complete bug 679938 - not yet landed
Mutation Event Listener Count [RESOLVED] not needed two counters bug 694033 - window instance count and portion with MELs
Image decode count (# of encoded images per tab) [RESOLVED] bug 684091
createTopLevelWindow - timing [RESOLVED] not needed bug 686435
cpuid Data - (list of capabilities) [RESOLVED] in bug bug 684038
screen and window sizes [RESOLVED] in bug bug 683071 (no patch yet)
slow prepared statements (sqlite) [RESOLVED] in bug SQL prepared statements (without user data, just the structure) bug 699051


Deployed (In Nightly/Aurora/Beta/Release)

Deployed Measurement Data format/sample Review Status Train/Release Notes
Character Encoding menu used flag 22 bug 840476
Character Encoding menu use situation enumeration of usage situations (labeled page, unlabeled page, local file or not, etc.) 22 bug 840476
Multipart XHR Usage boolean [RESOLVED] will determine fate of feature bug 701361 Measurement removed in train 22 along with the feature whose usage was measured.
gfx hardware info "adapterDescription":"", "adapterVendorID":"0x1002", "adapterDeviceID":"0x944a", "adapterRAM":"", "adapterDriver":"", "adapterDriverVersion":"", "adapterDriverDate":"" [RESOLVED] needed for gfx regressions 12 (patch) bug 706340
info.reason "idle-daily" [RESOLVED] not needed 7 It's always the same string
info.OS "Darwin" [RESOLVED] not needed 7 (patch) Short string (in UA)
info.appID GUID identifier [RESOLVED] not needed 7 (patch) -
info.locale application locale (e.g., "en-US") [RESOLVED] not needed 7 (patch) -
info.appName "Firefox" [RESOLVED] not needed 7 (patch) (in UA)
info.appVersion "7.0" [RESOLVED] not needed 7 (patch) (in UA)
info.appBuildID "20110624030724" [RESOLVED] not needed 7 (patch) Identifies date/time of build
info.platformBuildID "20110624030724" [RESOLVED] not needed 7 (patch) same as appBuildID
info.cpucount "2" [RESOLVED] not needed 7 number of cores, etc.
info.memsize "2922" [RESOLVED] not needed 7 RAM in megabytes
info.arch "x86-64" [RESOLVED] not needed 7 cpu architecture
info.version "11.0.0" [RESOLVED] not needed 7 os version (in UA)
info.device "N810" [RESOLVED] not needed 7 present on mobile only
info.manufacturer "Nokia" [RESOLVED] not needed 7 present on mobile only
info.hardware "smdkc210" [RESOLVED] not needed 7 Android hardware description (mfr code-name)
info.persona "336461" (integer ID) [RESOLVED] opt-in adjusted for 9 9 Present when a persona is enabled
info.addons name/GUID/version of installed addons [RESOLVED] opt-in adjusted for 9 9 Always present
simpleMeasurements.uptime "22" [RESOLVED] not needed 7 application uptime in minutes
simpleMeasurements.main "1000" [RESOLVED] not needed 7 milliseconds from startup in main()
simpleMeasurements.firstPaint "2000" [RESOLVED] not needed 7 milliseconds from startup to first paint
simpleMasurements.sessionRestored "3000" [RESOLVED] not needed 7 milliseconds from startup to session restore
simpleMeasurements.js.e4x "0" [RESOLVED] opt-in adjusted for 9 8 (patch) number of e4x objects created since browser startup
simpleMeasurements.js.setProto "0" [RESOLVED] opt-in adjusted for 9 8 (patch) number of times the __proto__ property has been set
simpleMeasurements.js.customIter "0" [RESOLVED] opt-in adjusted for 9 8 (patch) number of times a custom __iterator__ was used