services/healthreport/docs/dataformat.rst

changeset 0
6474c204b198
     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 +

mercurial