1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/services/healthreport/docs/dataformat.rst Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,1547 @@ 1.4 +.. _healthreport_dataformat: 1.5 + 1.6 +============== 1.7 +Payload Format 1.8 +============== 1.9 + 1.10 +Currently, the Firefox Health Report is submitted as a compressed JSON 1.11 +document. The root JSON element is an object. A *version* field defines 1.12 +the version of the payload which in turn defines the expected contents 1.13 +the object. 1.14 + 1.15 +As of 2013-07-03, desktop submits Version 2, and Firefox for Android submits 1.16 +Version 3 payloads. 1.17 + 1.18 +Version 3 1.19 +========= 1.20 + 1.21 +Version 3 is a complete rebuild of the document format. Events are tracked in 1.22 +an "environment". Environments are computed from a large swath of local data 1.23 +(e.g., add-ons, CPU count, versions), and a new environment comes into being 1.24 +when one of its attributes changes. 1.25 + 1.26 +Client documents, then, will include descriptions of many environments, and 1.27 +measurements will be attributed to one particular environment. 1.28 + 1.29 +A map of environments is present at the top level of the document, with the 1.30 +current named "current" in the map. Each environment has a hash identifier and 1.31 +a set of attributes. The current environment is completely described, and has 1.32 +its hash present in a "hash" attribute. All other environments are represented 1.33 +as a tree diff from the current environment, with their hash as the key in the 1.34 +"environments" object. 1.35 + 1.36 +A removed add-on has the value 'null'. 1.37 + 1.38 +There is no "last" data at present. 1.39 + 1.40 +Daily data is hierarchical: by day, then by environment, and then by 1.41 +measurement, and is present in "data", just as in v2. 1.42 + 1.43 +Leading by example:: 1.44 + 1.45 + { 1.46 + "lastPingDate": "2013-06-29", 1.47 + "thisPingDate": "2013-07-03", 1.48 + "version": 3, 1.49 + "environments": { 1.50 + "current": { 1.51 + "org.mozilla.sysinfo.sysinfo": { 1.52 + "memoryMB": 1567, 1.53 + "cpuCount": 4, 1.54 + "architecture": "armeabi-v7a", 1.55 + "_v": 1, 1.56 + "version": "4.1.2", 1.57 + "name": "Android" 1.58 + }, 1.59 + "org.mozilla.profile.age": { 1.60 + "_v": 1, 1.61 + "profileCreation": 15827 1.62 + }, 1.63 + "org.mozilla.addons.active": { 1.64 + "QuitNow@TWiGSoftware.com": { 1.65 + "appDisabled": false, 1.66 + "userDisabled": false, 1.67 + "scope": 1, 1.68 + "updateDay": 15885, 1.69 + "foreignInstall": false, 1.70 + "hasBinaryComponents": false, 1.71 + "blocklistState": 0, 1.72 + "type": "extension", 1.73 + "installDay": 15885, 1.74 + "version": "1.18.02" 1.75 + }, 1.76 + "{dbbf9331-b713-6eda-1006-205efead09dc}": { 1.77 + "appDisabled": false, 1.78 + "userDisabled": "askToActivate", 1.79 + "scope": 8, 1.80 + "updateDay": 15779, 1.81 + "foreignInstall": true, 1.82 + "blocklistState": 0, 1.83 + "type": "plugin", 1.84 + "installDay": 15779, 1.85 + "version": "11.1 r115" 1.86 + }, 1.87 + "desktopbydefault@bnicholson.mozilla.org": { 1.88 + "appDisabled": false, 1.89 + "userDisabled": true, 1.90 + "scope": 1, 1.91 + "updateDay": 15870, 1.92 + "foreignInstall": false, 1.93 + "hasBinaryComponents": false, 1.94 + "blocklistState": 0, 1.95 + "type": "extension", 1.96 + "installDay": 15870, 1.97 + "version": "1.1" 1.98 + }, 1.99 + "{6e092a7f-ba58-4abb-88c1-1a4e50b217e4}": { 1.100 + "appDisabled": false, 1.101 + "userDisabled": false, 1.102 + "scope": 1, 1.103 + "updateDay": 15828, 1.104 + "foreignInstall": false, 1.105 + "hasBinaryComponents": false, 1.106 + "blocklistState": 0, 1.107 + "type": "extension", 1.108 + "installDay": 15828, 1.109 + "version": "1.1.0" 1.110 + }, 1.111 + "{46551EC9-40F0-4e47-8E18-8E5CF550CFB8}": { 1.112 + "appDisabled": false, 1.113 + "userDisabled": true, 1.114 + "scope": 1, 1.115 + "updateDay": 15879, 1.116 + "foreignInstall": false, 1.117 + "hasBinaryComponents": false, 1.118 + "blocklistState": 0, 1.119 + "type": "extension", 1.120 + "installDay": 15879, 1.121 + "version": "1.3.2" 1.122 + }, 1.123 + "_v": 1 1.124 + }, 1.125 + "org.mozilla.appInfo.appinfo": { 1.126 + "_v": 3, 1.127 + "appLocale": "en_us", 1.128 + "osLocale": "en_us", 1.129 + "distribution": "", 1.130 + "acceptLangIsUserSet": 0, 1.131 + "isTelemetryEnabled": 1, 1.132 + "isBlocklistEnabled": 1 1.133 + }, 1.134 + "geckoAppInfo": { 1.135 + "updateChannel": "nightly", 1.136 + "id": "{aa3c5121-dab2-40e2-81ca-7ea25febc110}", 1.137 + "os": "Android", 1.138 + "platformBuildID": "20130703031323", 1.139 + "platformVersion": "25.0a1", 1.140 + "vendor": "Mozilla", 1.141 + "name": "fennec", 1.142 + "xpcomabi": "arm-eabi-gcc3", 1.143 + "appBuildID": "20130703031323", 1.144 + "_v": 1, 1.145 + "version": "25.0a1" 1.146 + }, 1.147 + "hash": "tB4Pnnep9yTxnMDymc3dAB2RRB0=", 1.148 + "org.mozilla.addons.counts": { 1.149 + "extension": 4, 1.150 + "plugin": 1, 1.151 + "_v": 1, 1.152 + "theme": 0 1.153 + } 1.154 + }, 1.155 + "k2O3hlreMeS7L1qtxeMsYWxgWWQ=": { 1.156 + "geckoAppInfo": { 1.157 + "platformBuildID": "20130630031138", 1.158 + "appBuildID": "20130630031138", 1.159 + "_v": 1 1.160 + }, 1.161 + "org.mozilla.appInfo.appinfo": { 1.162 + "_v": 2, 1.163 + } 1.164 + }, 1.165 + "1+KN9TutMpzdl4TJEl+aCxK+xcw=": { 1.166 + "geckoAppInfo": { 1.167 + "platformBuildID": "20130626031100", 1.168 + "appBuildID": "20130626031100", 1.169 + "_v": 1 1.170 + }, 1.171 + "org.mozilla.addons.active": { 1.172 + "QuitNow@TWiGSoftware.com": null, 1.173 + "{dbbf9331-b713-6eda-1006-205efead09dc}": null, 1.174 + "desktopbydefault@bnicholson.mozilla.org": null, 1.175 + "{6e092a7f-ba58-4abb-88c1-1a4e50b217e4}": null, 1.176 + "{46551EC9-40F0-4e47-8E18-8E5CF550CFB8}": null, 1.177 + "_v": 1 1.178 + }, 1.179 + "org.mozilla.addons.counts": { 1.180 + "extension": 0, 1.181 + "plugin": 0, 1.182 + "_v": 1 1.183 + } 1.184 + } 1.185 + }, 1.186 + "data": { 1.187 + "last": {}, 1.188 + "days": { 1.189 + "2013-07-03": { 1.190 + "tB4Pnnep9yTxnMDymc3dAB2RRB0=": { 1.191 + "org.mozilla.appSessions": { 1.192 + "normal": [ 1.193 + { 1.194 + "r": "P", 1.195 + "d": 2, 1.196 + "sj": 653 1.197 + }, 1.198 + { 1.199 + "r": "P", 1.200 + "d": 22 1.201 + }, 1.202 + { 1.203 + "r": "P", 1.204 + "d": 5 1.205 + }, 1.206 + { 1.207 + "r": "P", 1.208 + "d": 0 1.209 + }, 1.210 + { 1.211 + "r": "P", 1.212 + "sg": 3560, 1.213 + "d": 171, 1.214 + "sj": 518 1.215 + }, 1.216 + { 1.217 + "r": "P", 1.218 + "d": 16 1.219 + }, 1.220 + { 1.221 + "r": "P", 1.222 + "d": 1079 1.223 + } 1.224 + ], 1.225 + "_v": "4" 1.226 + } 1.227 + }, 1.228 + "k2O3hlreMeS7L1qtxeMsYWxgWWQ=": { 1.229 + "org.mozilla.appSessions": { 1.230 + "normal": [ 1.231 + { 1.232 + "r": "P", 1.233 + "d": 27 1.234 + }, 1.235 + { 1.236 + "r": "P", 1.237 + "d": 19 1.238 + }, 1.239 + { 1.240 + "r": "P", 1.241 + "d": 55 1.242 + } 1.243 + ], 1.244 + "_v": "4" 1.245 + }, 1.246 + "org.mozilla.searches.counts": { 1.247 + "bartext": { 1.248 + "google": 1 1.249 + }, 1.250 + "_v": "4" 1.251 + }, 1.252 + "org.mozilla.experiment": { 1.253 + "lastActive": "some.experiment.id" 1.254 + "_v": "1" 1.255 + } 1.256 + } 1.257 + } 1.258 + } 1.259 + } 1.260 + } 1.261 + 1.262 +App sessions in Version 3 1.263 +------------------------- 1.264 + 1.265 +Sessions are divided into "normal" and "abnormal". Session objects are stored as discrete JSON:: 1.266 + 1.267 + "org.mozilla.appSessions": { 1.268 + _v: 4, 1.269 + "normal": [ 1.270 + {"r":"P", "d": 123}, 1.271 + ], 1.272 + "abnormal": [ 1.273 + {"r":"A", "oom": true, "stopped": false} 1.274 + ] 1.275 + } 1.276 + 1.277 +Keys are: 1.278 + 1.279 +"r" 1.280 + reason. Values are "P" (activity paused), "A" (abnormal termination). 1.281 +"d" 1.282 + duration. Value in seconds. 1.283 +"sg" 1.284 + Gecko startup time (msec). Present if this is a clean launch. This 1.285 + corresponds to the telemetry timer *FENNEC_STARTUP_TIME_GECKOREADY*. 1.286 +"sj" 1.287 + Java activity init time (msec). Present if this is a clean launch. This 1.288 + corresponds to the telemetry timer *FENNEC_STARTUP_TIME_JAVAUI*, 1.289 + and includes initialization tasks beyond initial 1.290 + *onWindowFocusChanged*. 1.291 + 1.292 +Abnormal terminations will be missing a duration and will feature these keys: 1.293 + 1.294 +"oom" 1.295 + was the session killed by an OOM exception? 1.296 +"stopped" 1.297 + was the session stopped gently? 1.298 + 1.299 +Version 3.1 1.300 +----------- 1.301 + 1.302 +As of Firefox 27, *appinfo* is now bumped to v3, including *osLocale*, 1.303 +*appLocale* (currently always the same as *osLocale*), *distribution* (a string 1.304 +containing the distribution ID and version, separated by a colon), and 1.305 +*acceptLangIsUserSet*, an integer-boolean that describes whether the user set 1.306 +an *intl.accept_languages* preference. 1.307 + 1.308 +The search counts measurement is now at version 5, which indicates that 1.309 +non-partner searches are recorded. You'll see identifiers like "other-Foo Bar" 1.310 +rather than "other". 1.311 + 1.312 +Other notable differences from Version 2 1.313 +---------------------------------------- 1.314 + 1.315 +* There is no default browser indicator on Android. 1.316 +* Add-ons include a *blocklistState* attribute, as returned by AddonManager. 1.317 +* Searches are now version 4, and are hierarchical: how the search was started 1.318 + (bartext, barkeyword, barsuggest), and then counts per provider. 1.319 + 1.320 +Version 2 1.321 +========= 1.322 + 1.323 +Version 2 is the same as version 1 with the exception that it has an additional 1.324 +top-level field, *geckoAppInfo*, which contains basic application info. 1.325 + 1.326 +geckoAppInfo 1.327 +------------ 1.328 + 1.329 +This field is an object that is a simple map of string keys and values 1.330 +describing basic application metadata. It is very similar to the *appinfo* 1.331 +measurement in the *last* section. The difference is this field is almost 1.332 +certainly guaranteed to exist whereas the one in the data part of the 1.333 +payload may be omitted in certain scenarios (such as catastrophic client 1.334 +error). 1.335 + 1.336 +Its keys are as follows: 1.337 + 1.338 +appBuildID 1.339 + The build ID/date of the application. e.g. "20130314113542". 1.340 + 1.341 +version 1.342 + The value of nsXREAppData.version. This is the application's version. e.g. 1.343 + "21.0.0". 1.344 + 1.345 +vendor 1.346 + The value of nsXREAppData.vendor. Can be empty an empty string. For 1.347 + official Mozilla builds, this will be "Mozilla". 1.348 + 1.349 +name 1.350 + The value of nsXREAppData.name. For official Firefox builds, this 1.351 + will be "Firefox". 1.352 + 1.353 +id 1.354 + The value of nsXREAppData.ID. 1.355 + 1.356 +platformVersion 1.357 + The version of the Gecko platform (as opposed to the app version). For 1.358 + Firefox, this is almost certainly equivalent to the *version* field. 1.359 + 1.360 +platformBuildID 1.361 + The build ID/date of the Gecko platfor (as opposed to the app version). 1.362 + This is commonly equivalent to *appBuildID*. 1.363 + 1.364 +os 1.365 + The name of the operating system the application is running on. 1.366 + 1.367 +xpcomabi 1.368 + The binary architecture of the build. 1.369 + 1.370 +updateChannel 1.371 + The name of the channel used for application updates. Official Mozilla 1.372 + builds have one of the values {release, beta, aurora, nightly}. Local and 1.373 + test builds have *default* as the channel. 1.374 + 1.375 +Version 1 1.376 +========= 1.377 + 1.378 +Top-level Properties 1.379 +-------------------- 1.380 + 1.381 +The main JSON object contains the following properties: 1.382 + 1.383 +lastPingDate 1.384 + UTC date of the last upload. If this is the first upload from this client, 1.385 + this will not be present. 1.386 + 1.387 +thisPingDate 1.388 + UTC date when this payload was constructed. 1.389 + 1.390 +version 1.391 + Integer version of this payload format. Currently only 1 is defined. 1.392 + 1.393 +clientID 1.394 + An identifier that identifies the client that is submitting data. 1.395 + 1.396 + This property may not be present in older clients. 1.397 + 1.398 + See :ref:`healthreport_identifiers` for more info on identifiers. 1.399 + 1.400 +clientIDVersion 1.401 + Integer version associated with the generation semantics for the 1.402 + ``clientID``. 1.403 + 1.404 + If the value is ``1``, ``clientID`` is a randomly-generated UUID. 1.405 + 1.406 + This property may not be present in older clients. 1.407 + 1.408 +data 1.409 + Object holding data constituting health report. 1.410 + 1.411 +Data Properties 1.412 +--------------- 1.413 + 1.414 +The bulk of the health report is contained within the *data* object. This 1.415 +object has the following keys: 1.416 + 1.417 +days 1.418 + Object mapping UTC days to measurements from that day. Keys are in the 1.419 + *YYYY-MM-DD* format. e.g. "2013-03-14" 1.420 + 1.421 +last 1.422 + Object mapping measurement names to their values. 1.423 + 1.424 + 1.425 +The value of *days* and *last* are objects mapping measurement names to that 1.426 +measurement's values. The values are always objects. Each object contains 1.427 +a *_v* property. This property defines the version of this measurement. 1.428 +Additional non-underscore-prefixed properties are defined by the measurement 1.429 +itself (see sections below). 1.430 + 1.431 +Example 1.432 +------- 1.433 + 1.434 +Here is an example JSON document for version 1:: 1.435 + 1.436 + { 1.437 + "version": 1, 1.438 + "thisPingDate": "2013-03-11", 1.439 + "lastPingDate": "2013-03-10", 1.440 + "data": { 1.441 + "last": { 1.442 + "org.mozilla.addons.active": { 1.443 + "masspasswordreset@johnathan.nightingale": { 1.444 + "userDisabled": false, 1.445 + "appDisabled": false, 1.446 + "version": "1.05", 1.447 + "type": "extension", 1.448 + "scope": 1, 1.449 + "foreignInstall": false, 1.450 + "hasBinaryComponents": false, 1.451 + "installDay": 14973, 1.452 + "updateDay": 15317 1.453 + }, 1.454 + "places-maintenance@bonardo.net": { 1.455 + "userDisabled": false, 1.456 + "appDisabled": false, 1.457 + "version": "1.3", 1.458 + "type": "extension", 1.459 + "scope": 1, 1.460 + "foreignInstall": false, 1.461 + "hasBinaryComponents": false, 1.462 + "installDay": 15268, 1.463 + "updateDay": 15379 1.464 + }, 1.465 + "_v": 1 1.466 + }, 1.467 + "org.mozilla.appInfo.appinfo": { 1.468 + "_v": 1, 1.469 + "appBuildID": "20130309030841", 1.470 + "distributionID": "", 1.471 + "distributionVersion": "", 1.472 + "hotfixVersion": "", 1.473 + "id": "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}", 1.474 + "locale": "en-US", 1.475 + "name": "Firefox", 1.476 + "os": "Darwin", 1.477 + "platformBuildID": "20130309030841", 1.478 + "platformVersion": "22.0a1", 1.479 + "updateChannel": "nightly", 1.480 + "vendor": "Mozilla", 1.481 + "version": "22.0a1", 1.482 + "xpcomabi": "x86_64-gcc3" 1.483 + }, 1.484 + "org.mozilla.profile.age": { 1.485 + "_v": 1, 1.486 + "profileCreation": 12444 1.487 + }, 1.488 + "org.mozilla.appSessions.current": { 1.489 + "_v": 3, 1.490 + "startDay": 15773, 1.491 + "activeTicks": 522, 1.492 + "totalTime": 70858, 1.493 + "main": 1245, 1.494 + "firstPaint": 2695, 1.495 + "sessionRestored": 3436 1.496 + }, 1.497 + "org.mozilla.sysinfo.sysinfo": { 1.498 + "_v": 1, 1.499 + "cpuCount": 8, 1.500 + "memoryMB": 16384, 1.501 + "architecture": "x86-64", 1.502 + "name": "Darwin", 1.503 + "version": "12.2.1" 1.504 + } 1.505 + }, 1.506 + "days": { 1.507 + "2013-03-11": { 1.508 + "org.mozilla.addons.counts": { 1.509 + "_v": 1, 1.510 + "extension": 15, 1.511 + "plugin": 12, 1.512 + "theme": 1 1.513 + }, 1.514 + "org.mozilla.places.places": { 1.515 + "_v": 1, 1.516 + "bookmarks": 757, 1.517 + "pages": 104858 1.518 + }, 1.519 + "org.mozilla.appInfo.appinfo": { 1.520 + "_v": 1, 1.521 + "isDefaultBrowser": 1 1.522 + } 1.523 + }, 1.524 + "2013-03-10": { 1.525 + "org.mozilla.addons.counts": { 1.526 + "_v": 1, 1.527 + "extension": 15, 1.528 + "plugin": 12, 1.529 + "theme": 1 1.530 + }, 1.531 + "org.mozilla.places.places": { 1.532 + "_v": 1, 1.533 + "bookmarks": 757, 1.534 + "pages": 104857 1.535 + }, 1.536 + "org.mozilla.searches.counts": { 1.537 + "_v": 1, 1.538 + "google.urlbar": 4 1.539 + }, 1.540 + "org.mozilla.appInfo.appinfo": { 1.541 + "_v": 1, 1.542 + "isDefaultBrowser": 1 1.543 + } 1.544 + } 1.545 + } 1.546 + } 1.547 + } 1.548 + 1.549 +Measurements 1.550 +============ 1.551 + 1.552 +The bulk of payloads consists of measurement data. An individual measurement 1.553 +is merely a collection of related values e.g. *statistics about the Places 1.554 +database* or *system information*. 1.555 + 1.556 +Each measurement has an integer version number attached. When the fields in 1.557 +a measurement or the semantics of data within that measurement change, the 1.558 +version number is incremented. 1.559 + 1.560 +All measurements are defined alphabetically in the sections below. 1.561 + 1.562 +org.mozilla.addons.addons 1.563 +------------------------- 1.564 + 1.565 +This measurement contains information about the currently-installed add-ons. 1.566 + 1.567 +Version 2 1.568 +^^^^^^^^^ 1.569 + 1.570 +This version adds the human-readable fields *name* and *description*, both 1.571 +coming directly from the Addon instance as most properties in version 1. 1.572 +Also, all plugin details are now in org.mozilla.addons.plugins. 1.573 + 1.574 +Version 1 1.575 +^^^^^^^^^ 1.576 + 1.577 +The measurement object is a mapping of add-on IDs to objects containing 1.578 +add-on metadata. 1.579 + 1.580 +Each add-on contains the following properties: 1.581 + 1.582 +* userDisabled 1.583 +* appDisabled 1.584 +* version 1.585 +* type 1.586 +* scope 1.587 +* foreignInstall 1.588 +* hasBinaryComponents 1.589 +* installDay 1.590 +* updateDay 1.591 + 1.592 +With the exception of *installDay* and *updateDay*, all these properties 1.593 +come direct from the Addon instance. See https://developer.mozilla.org/en-US/docs/Addons/Add-on_Manager/Addon. 1.594 +*installDay* and *updateDay* are the number of days since UNIX epoch of 1.595 +the add-ons *installDate* and *updateDate* properties, respectively. 1.596 + 1.597 +Notes 1.598 +^^^^^ 1.599 + 1.600 +Add-ons that have opted out of AMO updates via the 1.601 +*extensions._id_.getAddons.cache.enabled* preference are, since Bug 868306 1.602 +(Firefox 24), included in the list of submitted add-ons. 1.603 + 1.604 +Example 1.605 +^^^^^^^ 1.606 +:: 1.607 + 1.608 + "org.mozilla.addons.addons": { 1.609 + "_v": 2, 1.610 + "{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}": { 1.611 + "userDisabled": false, 1.612 + "appDisabled": false, 1.613 + "name": "Adblock Plus", 1.614 + "version": "2.4.1", 1.615 + "type": "extension", 1.616 + "scope": 1, 1.617 + "description": "Ads were yesterday!", 1.618 + "foreignInstall": false, 1.619 + "hasBinaryComponents": false, 1.620 + "installDay": 16093, 1.621 + "updateDay": 16093 1.622 + }, 1.623 + "{e4a8a97b-f2ed-450b-b12d-ee082ba24781}": { 1.624 + "userDisabled": true, 1.625 + "appDisabled": false, 1.626 + "name": "Greasemonkey", 1.627 + "version": "1.14", 1.628 + "type": "extension", 1.629 + "scope": 1, 1.630 + "description": "A User Script Manager for Firefox", 1.631 + "foreignInstall": false, 1.632 + "hasBinaryComponents": false, 1.633 + "installDay": 16093, 1.634 + "updateDay": 16093 1.635 + } 1.636 + } 1.637 + 1.638 +org.mozilla.addons.plugins 1.639 +------------------------- 1.640 + 1.641 +This measurement contains information about the currently-installed plugins. 1.642 + 1.643 +Version 1 1.644 +^^^^^^^^^ 1.645 + 1.646 +The measurement object is a mapping of plugin IDs to objects containing 1.647 +plugin metadata. 1.648 + 1.649 +The plugin ID is constructed of the plugins filename, name, version and 1.650 +description. Every plugin has at least a filename and a name. 1.651 + 1.652 +Each plugin contains the following properties: 1.653 + 1.654 +* name 1.655 +* version 1.656 +* description 1.657 +* blocklisted 1.658 +* disabled 1.659 +* clicktoplay 1.660 +* mimeTypes 1.661 +* updateDay 1.662 + 1.663 +With the exception of *updateDay* and *mimeTypes*, all these properties come 1.664 +directly from ``nsIPluginTag`` via ``nsIPluginHost``. 1.665 +*updateDay* is the number of days since UNIX epoch of the plugins last modified 1.666 +time. 1.667 +*mimeTypes* is the list of mimetypes the plugin supports, see 1.668 +``nsIPluginTag.getMimeTypes()`. 1.669 + 1.670 +Example 1.671 +^^^^^^^ 1.672 + 1.673 +:: 1.674 + 1.675 + "org.mozilla.addons.plugins": { 1.676 + "_v": 1, 1.677 + "Flash Player.plugin:Shockwave Flash:12.0.0.38:Shockwave Flash 12.0 r0": { 1.678 + "mimeTypes": [ 1.679 + "application/x-shockwave-flash", 1.680 + "application/futuresplash" 1.681 + ], 1.682 + "name": "Shockwave Flash", 1.683 + "version": "12.0.0.38", 1.684 + "description": "Shockwave Flash 12.0 r0", 1.685 + "blocklisted": false, 1.686 + "disabled": false, 1.687 + "clicktoplay": false 1.688 + }, 1.689 + "Default Browser.plugin:Default Browser Helper:537:Provides information about the default web browser": { 1.690 + "mimeTypes": [ 1.691 + "application/apple-default-browser" 1.692 + ], 1.693 + "name": "Default Browser Helper", 1.694 + "version": "537", 1.695 + "description": "Provides information about the default web browser", 1.696 + "blocklisted": false, 1.697 + "disabled": true, 1.698 + "clicktoplay": false 1.699 + } 1.700 + } 1.701 + 1.702 +org.mozilla.addons.counts 1.703 +------------------------- 1.704 + 1.705 +This measurement contains information about historical add-on counts. 1.706 + 1.707 +Version 1 1.708 +^^^^^^^^^ 1.709 + 1.710 +The measurement object consists of counts of different add-on types. The 1.711 +properties are: 1.712 + 1.713 +extension 1.714 + Integer count of installed extensions. 1.715 +plugin 1.716 + Integer count of installed plugins. 1.717 +theme 1.718 + Integer count of installed themes. 1.719 +lwtheme 1.720 + Integer count of installed lightweigh themes. 1.721 + 1.722 +Notes 1.723 +^^^^^ 1.724 + 1.725 +Add-ons opted out of AMO updates are included in the counts. This differs from 1.726 +the behavior of the active add-ons measurement. 1.727 + 1.728 +If no add-ons of a particular type are installed, the property for that type 1.729 +will not be present (as opposed to an explicit property with value of 0). 1.730 + 1.731 +Example 1.732 +^^^^^^^ 1.733 + 1.734 +:: 1.735 + 1.736 + "2013-03-14": { 1.737 + "org.mozilla.addons.counts": { 1.738 + "_v": 1, 1.739 + "extension": 21, 1.740 + "plugin": 4, 1.741 + "theme": 1 1.742 + } 1.743 + } 1.744 + 1.745 + 1.746 + 1.747 +org.mozilla.appInfo.appinfo 1.748 +--------------------------- 1.749 + 1.750 +This measurement contains basic XUL application and Gecko platform 1.751 +information. It is reported in the *last* section. 1.752 + 1.753 +Version 2 1.754 +^^^^^^^^^ 1.755 + 1.756 +In addition to fields present in version 1, this version has the following 1.757 +fields appearing in the *days* section: 1.758 + 1.759 +isBlocklistEnabled 1.760 + Whether the blocklist ping is enabled. This is an integer, 0 or 1. 1.761 + This does not indicate whether the blocklist ping was sent but merely 1.762 + whether the application will try to send the blocklist ping. 1.763 + 1.764 +isTelemetryEnabled 1.765 + Whether Telemetry is enabled. This is an integer, 0 or 1. 1.766 + 1.767 +Version 1 1.768 +^^^^^^^^^ 1.769 + 1.770 +The measurement object contains mostly string values describing the 1.771 +current application and build. The properties are: 1.772 + 1.773 +* vendor 1.774 +* name 1.775 +* id 1.776 +* version 1.777 +* appBuildID 1.778 +* platformVersion 1.779 +* platformBuildID 1.780 +* os 1.781 +* xpcomabi 1.782 +* updateChannel 1.783 +* distributionID 1.784 +* distributionVersion 1.785 +* hotfixVersion 1.786 +* locale 1.787 +* isDefaultBrowser 1.788 + 1.789 +Notes 1.790 +^^^^^ 1.791 + 1.792 +All of the properties appear in the *last* section except for 1.793 +*isDefaultBrowser*, which appears under *days*. 1.794 + 1.795 +Example 1.796 +^^^^^^^ 1.797 + 1.798 +This example comes from an official OS X Nightly build:: 1.799 + 1.800 + "org.mozilla.appInfo.appinfo": { 1.801 + "_v": 1, 1.802 + "appBuildID": "20130311030946", 1.803 + "distributionID": "", 1.804 + "distributionVersion": "", 1.805 + "hotfixVersion": "", 1.806 + "id": "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}", 1.807 + "locale": "en-US", 1.808 + "name": "Firefox", 1.809 + "os": "Darwin", 1.810 + "platformBuildID": "20130311030946", 1.811 + "platformVersion": "22.0a1", 1.812 + "updateChannel": "nightly", 1.813 + "vendor": "Mozilla", 1.814 + "version": "22.0a1", 1.815 + "xpcomabi": "x86_64-gcc3" 1.816 + }, 1.817 + 1.818 +org.mozilla.appInfo.update 1.819 +-------------------------- 1.820 + 1.821 +This measurement contains information about the application update mechanism 1.822 +in the application. 1.823 + 1.824 +Version 1 1.825 +^^^^^^^^^ 1.826 + 1.827 +The following daily values are reported: 1.828 + 1.829 +enabled 1.830 + Whether automatic application update checking is enabled. 1 for yes, 1.831 + 0 for no. 1.832 +autoDownload 1.833 + Whether automatic download of available updates is enabled. 1.834 + 1.835 +Notes 1.836 +^^^^^ 1.837 + 1.838 +This measurement was merged to mozilla-central for JS FHR on 2013-07-15. 1.839 + 1.840 +Example 1.841 +^^^^^^^ 1.842 + 1.843 +:: 1.844 + 1.845 + "2013-07-15": { 1.846 + "org.mozilla.appInfo.update": { 1.847 + "_v": 1, 1.848 + "enabled": 1, 1.849 + "autoDownload": 1, 1.850 + } 1.851 + } 1.852 + 1.853 +org.mozilla.appInfo.versions 1.854 +---------------------------- 1.855 + 1.856 +This measurement contains a history of application version numbers. 1.857 + 1.858 +Version 2 1.859 +^^^^^^^^^ 1.860 + 1.861 +Version 2 reports more fields than version 1 and is not backwards compatible. 1.862 +The following fields are present in version 2: 1.863 + 1.864 +appVersion 1.865 + An array of application version strings. 1.866 +appBuildID 1.867 + An array of application build ID strings. 1.868 +platformVersion 1.869 + An array of platform version strings. 1.870 +platformBuildID 1.871 + An array of platform build ID strings. 1.872 + 1.873 +When the application is upgraded, the new version and/or build IDs are 1.874 +appended to their appropriate fields. 1.875 + 1.876 +Version 1 1.877 +^^^^^^^^^ 1.878 + 1.879 +When the application version (*version* from *org.mozilla.appinfo.appinfo*) 1.880 +changes, we record the new version on the day the change was seen. The new 1.881 +versions for a day are recorded in an array under the *version* property. 1.882 + 1.883 +Notes 1.884 +^^^^^ 1.885 + 1.886 +If the application isn't upgraded, this measurement will not be present. 1.887 +This means this measurement will not be present for most days if a user is 1.888 +on the release channel (since updates are typically released every 6 weeks). 1.889 +However, users on the Nightly and Aurora channels will likely have a lot 1.890 +of these entries since those builds are updated every day. 1.891 + 1.892 +Values for this measurement are collected when performing the daily 1.893 +collection (typically occurs at upload time). As a result, it's possible 1.894 +the actual upgrade day may not be attributed to the proper day - the 1.895 +reported day may lag behind. 1.896 + 1.897 +The app and platform versions and build IDs should be identical for most 1.898 +clients. If they are different, we are possibly looking at a *Frankenfox*. 1.899 + 1.900 +Example 1.901 +^^^^^^^ 1.902 + 1.903 +:: 1.904 + 1.905 + "2013-03-27": { 1.906 + "org.mozilla.appInfo.versions": { 1.907 + "_v": 2, 1.908 + "appVersion": [ 1.909 + "22.0.0" 1.910 + ], 1.911 + "appBuildID": [ 1.912 + "20130325031100" 1.913 + ], 1.914 + "platformVersion": [ 1.915 + "22.0.0" 1.916 + ], 1.917 + "platformBuildID": [ 1.918 + "20130325031100" 1.919 + ] 1.920 + } 1.921 + } 1.922 + 1.923 +org.mozilla.appSessions.current 1.924 +------------------------------- 1.925 + 1.926 +This measurement contains information about the currently running XUL 1.927 +application's session. 1.928 + 1.929 +Version 3 1.930 +^^^^^^^^^ 1.931 + 1.932 +This measurement has the following properties: 1.933 + 1.934 +startDay 1.935 + Integer days since UNIX epoch when this session began. 1.936 +activeTicks 1.937 + Integer count of *ticks* the session was active for. Gecko periodically 1.938 + sends out a signal when the session is active. Session activity 1.939 + involves keyboard or mouse interaction with the application. Each tick 1.940 + represents a window of 5 seconds where there was interaction. 1.941 +totalTime 1.942 + Integer seconds the session has been alive. 1.943 +main 1.944 + Integer milliseconds it took for the Gecko process to start up. 1.945 +firstPaint 1.946 + Integer milliseconds from process start to first paint. 1.947 +sessionRestored 1.948 + Integer milliseconds from process start to session restore. 1.949 + 1.950 +Example 1.951 +^^^^^^^ 1.952 + 1.953 +:: 1.954 + 1.955 + "org.mozilla.appSessions.current": { 1.956 + "_v": 3, 1.957 + "startDay": 15775, 1.958 + "activeTicks": 4282, 1.959 + "totalTime": 249422, 1.960 + "main": 851, 1.961 + "firstPaint": 3271, 1.962 + "sessionRestored": 5998 1.963 + } 1.964 + 1.965 +org.mozilla.appSessions.previous 1.966 +-------------------------------- 1.967 + 1.968 +This measurement contains information about previous XUL application sessions. 1.969 + 1.970 +Version 3 1.971 +^^^^^^^^^ 1.972 + 1.973 +This measurement contains per-day lists of all the sessions started on that 1.974 +day. The following properties may be present: 1.975 + 1.976 +cleanActiveTicks 1.977 + Active ticks of sessions that were properly shut down. 1.978 +cleanTotalTime 1.979 + Total number of seconds for sessions that were properly shut down. 1.980 +abortedActiveTicks 1.981 + Active ticks of sessions that were not properly shut down. 1.982 +abortedTotalTime 1.983 + Total number of seconds for sessions that were not properly shut down. 1.984 +main 1.985 + Time in milliseconds from process start to main process initialization. 1.986 +firstPaint 1.987 + Time in milliseconds from process start to first paint. 1.988 +sessionRestored 1.989 + Time in milliseconds from process start to session restore. 1.990 + 1.991 +Notes 1.992 +^^^^^ 1.993 + 1.994 +Sessions are recorded on the date on which they began. 1.995 + 1.996 +If a session was aborted/crashed, the total time may be less than the actual 1.997 +total time. This is because we don't always update total time during periods 1.998 +of inactivity and the abort/crash could occur after a long period of idle, 1.999 +before we've updated the total time. 1.1000 + 1.1001 +The lengths of the arrays for {cleanActiveTicks, cleanTotalTime}, 1.1002 +{abortedActiveTicks, abortedTotalTime}, and {main, firstPaint, sessionRestored} 1.1003 +should all be identical. 1.1004 + 1.1005 +The length of the clean sessions plus the length of the aborted sessions should 1.1006 +be equal to the length of the {main, firstPaint, sessionRestored} properties. 1.1007 + 1.1008 +It is not possible to distinguish the main, firstPaint, and sessionRestored 1.1009 +values from a clean vs aborted session: they are all lumped together. 1.1010 + 1.1011 +For sessions spanning multiple UTC days, it's not possible to know which 1.1012 +days the session was active for. It's possible a week long session only 1.1013 +had activity for 2 days and there's no way for us to tell which days. 1.1014 + 1.1015 +Example 1.1016 +^^^^^^^ 1.1017 + 1.1018 +:: 1.1019 + 1.1020 + "org.mozilla.appSessions.previous": { 1.1021 + "_v": 3, 1.1022 + "cleanActiveTicks": [ 1.1023 + 78, 1.1024 + 1785 1.1025 + ], 1.1026 + "cleanTotalTime": [ 1.1027 + 4472, 1.1028 + 88908 1.1029 + ], 1.1030 + "main": [ 1.1031 + 32, 1.1032 + 952 1.1033 + ], 1.1034 + "firstPaint": [ 1.1035 + 2755, 1.1036 + 3497 1.1037 + ], 1.1038 + "sessionRestored": [ 1.1039 + 5149, 1.1040 + 5520 1.1041 + ] 1.1042 + } 1.1043 + 1.1044 +org.mozilla.crashes.crashes 1.1045 +--------------------------- 1.1046 + 1.1047 +This measurement contains a historical record of application crashes. 1.1048 + 1.1049 +Version 2 1.1050 +^^^^^^^^^ 1.1051 + 1.1052 +The switch to version 2 coincides with the introduction of the 1.1053 +:ref:`crashes_crashmanager`, which provides a more robust source of 1.1054 +crash data. 1.1055 + 1.1056 +This measurement will be reported on each day there was a crash. The 1.1057 +following fields may be present in each record: 1.1058 + 1.1059 +mainCrash 1.1060 + The number of main process crashes that occurred on the given day. 1.1061 + 1.1062 +Yes, version 2 does not track submissions like version 1. It is very 1.1063 +likely submissions will be re-added later. 1.1064 + 1.1065 +Also absent from version 2 are plugin crashes and hangs. These will be 1.1066 +re-added, likely in version 3. 1.1067 + 1.1068 +Version 1 1.1069 +^^^^^^^^^ 1.1070 + 1.1071 +This measurement will be reported on each day there was a crash. The 1.1072 +following properties are reported: 1.1073 + 1.1074 +pending 1.1075 + The number of crash reports that haven't been submitted. 1.1076 +submitted 1.1077 + The number of crash reports that were submitted. 1.1078 + 1.1079 +Notes 1.1080 +^^^^^ 1.1081 + 1.1082 +Main process crashes are typically submitted immediately after they 1.1083 +occur (by checking a box in the crash reporter, which should appear 1.1084 +automatically after a crash). If the crash reporter submits the crash 1.1085 +successfully, we get a submitted crash. Else, we leave it as pending. 1.1086 + 1.1087 +A pending crash does not mean it will eventually be submitted. 1.1088 + 1.1089 +Pending crash reports can be submitted post-crash by going to 1.1090 +about:crashes. 1.1091 + 1.1092 +If a pending crash is submitted via about:crashes, the submitted count 1.1093 +increments but the pending count does not decrement. This is because FHR 1.1094 +does not know which pending crash was just submitted and therefore it does 1.1095 +not know which day's pending crash to decrement. 1.1096 + 1.1097 +Example 1.1098 +^^^^^^^ 1.1099 + 1.1100 +:: 1.1101 + 1.1102 + "org.mozilla.crashes.crashes": { 1.1103 + "_v": 1, 1.1104 + "pending": 1, 1.1105 + "submitted": 2 1.1106 + }, 1.1107 + "org.mozilla.crashes.crashes": { 1.1108 + "_v": 2, 1.1109 + "mainCrash": 2 1.1110 + } 1.1111 + 1.1112 +org.mozilla.healthreport.submissions 1.1113 +------------------------------------ 1.1114 + 1.1115 +This measurement contains a history of FHR's own data submission activity. 1.1116 +It was added in Firefox 23 in early May 2013. 1.1117 + 1.1118 +Version 2 1.1119 +^^^^^^^^^ 1.1120 + 1.1121 +This is the same as version 1 except an additional field has been added. 1.1122 + 1.1123 +uploadAlreadyInProgress 1.1124 + A request for upload was initiated while another upload was in progress. 1.1125 + This should not occur in well-behaving clients. It (along with a lock 1.1126 + preventing simultaneous upload) was added to ensure this never occurs. 1.1127 + 1.1128 +Version 1 1.1129 +^^^^^^^^^ 1.1130 + 1.1131 +Daily counts of upload events are recorded. 1.1132 + 1.1133 +firstDocumentUploadAttempt 1.1134 + An attempt was made to upload the client's first document to the server. 1.1135 + These are uploads where the client is not aware of a previous document ID 1.1136 + on the server. Unless the client had disabled upload, there should be at 1.1137 + most one of these in the history of the client. 1.1138 + 1.1139 +continuationUploadAttempt 1.1140 + An attempt was made to upload a document that replaces an existing document 1.1141 + on the server. Most upload attempts should be attributed to this as opposed 1.1142 + to *firstDocumentUploadAttempt*. 1.1143 + 1.1144 +uploadSuccess 1.1145 + The upload attempt recorded by *firstDocumentUploadAttempt* or 1.1146 + *continuationUploadAttempt* was successful. 1.1147 + 1.1148 +uploadTransportFailure 1.1149 + An upload attempt failed due to transport failure (network unavailable, 1.1150 + etc). 1.1151 + 1.1152 +uploadServerFailure 1.1153 + An upload attempt failed due to a server-reported failure. Ideally these 1.1154 + are failures reported by the FHR server itself. However, intermediate 1.1155 + proxies, firewalls, etc may trigger this depending on how things are 1.1156 + configured. 1.1157 + 1.1158 +uploadClientFailure 1.1159 + An upload attempt failued due to an error/exception in the client. 1.1160 + This almost certainly points to a bug in the client. 1.1161 + 1.1162 +The result for an upload attempt is always attributed to the same day as 1.1163 +the attempt, even if the result occurred on a different day from the attempt. 1.1164 +Therefore, the sum of the result counts should equal the result of the attempt 1.1165 +counts. 1.1166 + 1.1167 +org.mozilla.places.places 1.1168 +------------------------- 1.1169 + 1.1170 +This measurement contains information about the Places database (where Firefox 1.1171 +stores its history and bookmarks). 1.1172 + 1.1173 +Version 1 1.1174 +^^^^^^^^^ 1.1175 + 1.1176 +Daily counts of items in the database are reported in the following properties: 1.1177 + 1.1178 +bookmarks 1.1179 + Integer count of bookmarks present. 1.1180 +pages 1.1181 + Integer count of pages in the history database. 1.1182 + 1.1183 +Example 1.1184 +^^^^^^^ 1.1185 + 1.1186 +:: 1.1187 + 1.1188 + "org.mozilla.places.places": { 1.1189 + "_v": 1, 1.1190 + "bookmarks": 388, 1.1191 + "pages": 94870 1.1192 + } 1.1193 + 1.1194 +org.mozilla.profile.age 1.1195 +----------------------- 1.1196 + 1.1197 +This measurement contains information about the current profile's age. 1.1198 + 1.1199 +Version 1 1.1200 +^^^^^^^^^ 1.1201 + 1.1202 +A single *profileCreation* property is present. It defines the integer 1.1203 +days since UNIX epoch that the current profile was created. 1.1204 + 1.1205 +Notes 1.1206 +^^^^^ 1.1207 + 1.1208 +It is somewhat difficult to obtain a reliable *profile born date* due to a 1.1209 +number of factors. 1.1210 + 1.1211 +Example 1.1212 +^^^^^^^ 1.1213 + 1.1214 +:: 1.1215 + 1.1216 + "org.mozilla.profile.age": { 1.1217 + "_v": 1, 1.1218 + "profileCreation": 15176 1.1219 + } 1.1220 + 1.1221 +org.mozilla.searches.counts 1.1222 +--------------------------- 1.1223 + 1.1224 +This measurement contains information about searches performed in the 1.1225 +application. 1.1226 + 1.1227 +Version 2 1.1228 +^^^^^^^^^ 1.1229 + 1.1230 +This behaves like version 1 except we added all search engines that 1.1231 +Mozilla has a partner agreement with. Like version 1, we concatenate 1.1232 +a search engine ID with a search origin. 1.1233 + 1.1234 +Another difference with version 2 is we should no longer misattribute 1.1235 +a search to the *other* bucket if the search engine name is localized. 1.1236 + 1.1237 +The set of search engine providers is: 1.1238 + 1.1239 +* amazon-co-uk 1.1240 +* amazon-de 1.1241 +* amazon-en-GB 1.1242 +* amazon-france 1.1243 +* amazon-it 1.1244 +* amazon-jp 1.1245 +* amazondotcn 1.1246 +* amazondotcom 1.1247 +* amazondotcom-de 1.1248 +* aol-en-GB 1.1249 +* aol-web-search 1.1250 +* bing 1.1251 +* eBay 1.1252 +* eBay-de 1.1253 +* eBay-en-GB 1.1254 +* eBay-es 1.1255 +* eBay-fi 1.1256 +* eBay-france 1.1257 +* eBay-hu 1.1258 +* eBay-in 1.1259 +* eBay-it 1.1260 +* google 1.1261 +* google-jp 1.1262 +* google-ku 1.1263 +* google-maps-zh-TW 1.1264 +* mailru 1.1265 +* mercadolibre-ar 1.1266 +* mercadolibre-cl 1.1267 +* mercadolibre-mx 1.1268 +* seznam-cz 1.1269 +* twitter 1.1270 +* twitter-de 1.1271 +* twitter-ja 1.1272 +* yahoo 1.1273 +* yahoo-NO 1.1274 +* yahoo-answer-zh-TW 1.1275 +* yahoo-ar 1.1276 +* yahoo-bid-zh-TW 1.1277 +* yahoo-br 1.1278 +* yahoo-ch 1.1279 +* yahoo-cl 1.1280 +* yahoo-de 1.1281 +* yahoo-en-GB 1.1282 +* yahoo-es 1.1283 +* yahoo-fi 1.1284 +* yahoo-france 1.1285 +* yahoo-fy-NL 1.1286 +* yahoo-id 1.1287 +* yahoo-in 1.1288 +* yahoo-it 1.1289 +* yahoo-jp 1.1290 +* yahoo-jp-auctions 1.1291 +* yahoo-mx 1.1292 +* yahoo-sv-SE 1.1293 +* yahoo-zh-TW 1.1294 +* yandex 1.1295 +* yandex-ru 1.1296 +* yandex-slovari 1.1297 +* yandex-tr 1.1298 +* yandex.by 1.1299 +* yandex.ru-be 1.1300 + 1.1301 +And of course, *other*. 1.1302 + 1.1303 +The sources for searches remain: 1.1304 + 1.1305 +* abouthome 1.1306 +* contextmenu 1.1307 +* searchbar 1.1308 +* urlbar 1.1309 + 1.1310 +The measurement will only be populated with providers and sources that 1.1311 +occurred that day. 1.1312 + 1.1313 +If a user switches locales, searches from default providers on the older 1.1314 +locale will still be supported. However, if that same search engine is 1.1315 +added by the user to the new build and is *not* a default search engine 1.1316 +provider, its searches will be attributed to the *other* bucket. 1.1317 + 1.1318 +Version 1 1.1319 +^^^^^^^^^ 1.1320 + 1.1321 +We record counts of performed searches grouped by search engine and search 1.1322 +origin. Only search engines with which Mozilla has a business relationship 1.1323 +are explicitly counted. All other search engines are grouped into an 1.1324 +*other* bucket. 1.1325 + 1.1326 +The following search engines are explicitly counted: 1.1327 + 1.1328 +* Amazon.com 1.1329 +* Bing 1.1330 +* Google 1.1331 +* Yahoo 1.1332 +* Other 1.1333 + 1.1334 +The following search origins are distinguished: 1.1335 + 1.1336 +about:home 1.1337 + Searches initiated from the search text box on about:home. 1.1338 +context menu 1.1339 + Searches initiated from the context menu (highlight text, right click, 1.1340 + and select "search for...") 1.1341 +search bar 1.1342 + Searches initiated from the search bar (the text field next to the 1.1343 + Awesomebar) 1.1344 +url bar 1.1345 + Searches initiated from the awesomebar/url bar. 1.1346 + 1.1347 +Due to the localization of search engine names, non en-US locales may wrongly 1.1348 +attribute searches to the *other* bucket. This is fixed in version 2. 1.1349 + 1.1350 +Example 1.1351 +^^^^^^^ 1.1352 + 1.1353 +:: 1.1354 + 1.1355 + "org.mozilla.searches.counts": { 1.1356 + "_v": 1, 1.1357 + "google.searchbar": 3, 1.1358 + "google.urlbar": 7 1.1359 + }, 1.1360 + 1.1361 +org.mozilla.searches.engines 1.1362 +---------------------------- 1.1363 + 1.1364 +This measurement contains information about search engines. 1.1365 + 1.1366 +Version 1 1.1367 +^^^^^^^^^ 1.1368 + 1.1369 +This version debuted with Firefox 31 on desktop. It contains the 1.1370 +following properties: 1.1371 + 1.1372 +default 1.1373 + Daily string identifier or name of the default search engine provider. 1.1374 + 1.1375 + This field will only be collected if Telemetry is enabled. If 1.1376 + Telemetry is enabled and then later disabled, this field may 1.1377 + disappear from future days in the payload. 1.1378 + 1.1379 + The special value ``NONE`` could occur if there is no default search 1.1380 + engine. 1.1381 + 1.1382 + The special value ``UNDEFINED`` could occur if a default search 1.1383 + engine exists but its identifier could not be determined. 1.1384 + 1.1385 + This field's contents are 1.1386 + ``Services.search.defaultEngine.identifier`` (if defined) or 1.1387 + ``"other-"`` + ``Services.search.defaultEngine.name`` if not. 1.1388 + In other words, search engines without an ``.identifier`` 1.1389 + are prefixed with ``other-``. 1.1390 + 1.1391 +org.mozilla.sync.sync 1.1392 +--------------------- 1.1393 + 1.1394 +This daily measurement contains information about the Sync service. 1.1395 + 1.1396 +Values should be recorded for every day FHR measurements occurred. 1.1397 + 1.1398 +Version 1 1.1399 +^^^^^^^^^ 1.1400 + 1.1401 +This version debuted with Firefox 30 on desktop. It contains the following 1.1402 +properties: 1.1403 + 1.1404 +enabled 1.1405 + Daily numeric indicating whether Sync is configured and enabled. 1 if so, 1.1406 + 0 otherwise. 1.1407 + 1.1408 +preferredProtocol 1.1409 + String version of the maximum Sync protocol version the client supports. 1.1410 + This will be ``1.1`` for for legacy Sync and ``1.5`` for clients that 1.1411 + speak the Firefox Accounts protocol. 1.1412 + 1.1413 +actualProtocol 1.1414 + The actual Sync protocol version the client is configured to use. 1.1415 + 1.1416 + This will be ``1.1`` if the client is configured with the legacy Sync 1.1417 + service or if the client only supports ``1.1``. 1.1418 + 1.1419 + It will be ``1.5`` if the client supports ``1.5`` and either a) the 1.1420 + client is not configured b) the client is using Firefox Accounts Sync. 1.1421 + 1.1422 +syncStart 1.1423 + Count of sync operations performed. 1.1424 + 1.1425 +syncSuccess 1.1426 + Count of sync operations that completed successfully. 1.1427 + 1.1428 +syncError 1.1429 + Count of sync operations that did not complete successfully. 1.1430 + 1.1431 + This is a measure of overall sync success. This does *not* reflect 1.1432 + recoverable errors (such as record conflict) that can occur during 1.1433 + sync. This is thus a rough proxy of whether the sync service is 1.1434 + operating without error. 1.1435 + 1.1436 +org.mozilla.sync.devices 1.1437 +------------------------ 1.1438 + 1.1439 +This daily measurement contains information about the device type composition 1.1440 +for the configured Sync account. 1.1441 + 1.1442 +Version 1 1.1443 +^^^^^^^^^ 1.1444 + 1.1445 +Version 1 was introduced with Firefox 30. 1.1446 + 1.1447 +Field names are dynamic according to the client-reported device types from 1.1448 +Sync records. All fields are daily last seen integer values corresponding to 1.1449 +the number of devices of that type. 1.1450 + 1.1451 +Common values include: 1.1452 + 1.1453 +desktop 1.1454 + Corresponds to a Firefox desktop client. 1.1455 + 1.1456 +mobile 1.1457 + Corresponds to a Fennec client. 1.1458 + 1.1459 +org.mozilla.sysinfo.sysinfo 1.1460 +--------------------------- 1.1461 + 1.1462 +This measurement contains basic information about the system the application 1.1463 +is running on. 1.1464 + 1.1465 +Version 2 1.1466 +^^^^^^^^^ 1.1467 + 1.1468 +This version debuted with Firefox 29 on desktop. 1.1469 + 1.1470 +A single property was introduced. 1.1471 + 1.1472 +isWow64 1.1473 + If present, this property indicates whether the machine supports WoW64. 1.1474 + This property can be used to identify whether the host machine is 64-bit. 1.1475 + 1.1476 + This property is only present on Windows machines. It is the preferred way 1.1477 + to identify 32- vs 64-bit support in that environment. 1.1478 + 1.1479 +Version 1 1.1480 +^^^^^^^^^ 1.1481 + 1.1482 +The following properties may be available: 1.1483 + 1.1484 +cpuCount 1.1485 + Integer number of CPUs/cores in the machine. 1.1486 +memoryMB 1.1487 + Integer megabytes of memory in the machine. 1.1488 +manufacturer 1.1489 + The manufacturer of the device. 1.1490 +device 1.1491 + The name of the device (like model number). 1.1492 +hardware 1.1493 + Unknown. 1.1494 +name 1.1495 + OS name. 1.1496 +version 1.1497 + OS version. 1.1498 +architecture 1.1499 + OS architecture that the application is built for. This is not the 1.1500 + actual system architecture. 1.1501 + 1.1502 +Example 1.1503 +^^^^^^^ 1.1504 + 1.1505 +:: 1.1506 + 1.1507 + "org.mozilla.sysinfo.sysinfo": { 1.1508 + "_v": 1, 1.1509 + "cpuCount": 8, 1.1510 + "memoryMB": 8192, 1.1511 + "architecture": "x86-64", 1.1512 + "name": "Darwin", 1.1513 + "version": "12.2.0" 1.1514 + } 1.1515 + 1.1516 + 1.1517 + 1.1518 +org.mozilla.experiments.info 1.1519 +---------------------------------- 1.1520 + 1.1521 +Daily measurement reporting information about the Telemetry Experiments service. 1.1522 + 1.1523 +Version 1 1.1524 +^^^^^^^^^ 1.1525 + 1.1526 +Property: 1.1527 + 1.1528 +lastActive 1.1529 + ID of the final Telemetry Experiment that is active on a given day, if any. 1.1530 + 1.1531 + 1.1532 +Version 2 1.1533 +^^^^^^^^^ 1.1534 + 1.1535 +Adds an additional optional property: 1.1536 + 1.1537 +lastActiveBranch 1.1538 + If the experiment uses branches, the branch identifier string. 1.1539 + 1.1540 +Example 1.1541 +^^^^^^^ 1.1542 + 1.1543 +:: 1.1544 + 1.1545 + "org.mozilla.experiments.info": { 1.1546 + "_v": 2, 1.1547 + "lastActive": "some.experiment.id", 1.1548 + "lastActiveBranch": "control" 1.1549 + } 1.1550 +