File: common-ping.rst

package info (click to toggle)
firefox 134.0.2-3
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 4,345,684 kB
  • sloc: cpp: 7,244,582; javascript: 6,236,669; ansic: 3,654,775; python: 1,359,774; xml: 618,542; asm: 426,944; java: 183,315; sh: 66,206; makefile: 19,398; perl: 13,009; objc: 12,453; yacc: 4,583; cs: 3,846; pascal: 2,989; lex: 1,720; ruby: 1,194; exp: 762; php: 436; lisp: 258; awk: 247; sql: 66; sed: 54; csh: 10
file content (44 lines) | stat: -rw-r--r-- 1,966 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44

Common ping format
==================

This defines the top-level structure of a Telemetry ping.
It contains basic information shared between different ping types, which enables proper storage and processing of the raw pings server-side.

It also contains optional further information:

* the :doc:`environment data <../data/environment>`, which contains important info to correlate the measurements against
* the ``clientId``, a UUID identifying a profile and allowing profile-oriented correlation of data
* the ``profileGroupId``, a UUID identifying the profile's group on a single device and allowing user-oriented correlation of data

*Note:* These are not submitted with all ping types due to privacy concerns. This and the data it that can be correlated against is inspected under the `data collection policy <https://wiki.mozilla.org/Firefox/Data_Collection>`_.

Finally, the structure also contains the `payload`, which is the specific data submitted for the respective *ping type*.

Structure:

.. code-block:: js

    {
      type: <string>, // "main", "activation", "optout", "saved-session", ...
      id: <UUID>, // a UUID that identifies this ping
      creationDate: <ISO date>, // the date the ping was generated
      version: <number>, // the version of the ping format, currently 4

      application: {
        architecture: <string>, // build architecture, e.g. x86
        buildId: <string>, // "20141126041045"
        name: <string>, // "Firefox"
        version: <string>, // "35.0"
        displayVersion: <string>, // "35.0b3"
        vendor: <string>, // "Mozilla"
        platformVersion: <string>, // "35.0"
        xpcomAbi: <string>, // e.g. "x86-msvc"
        channel: <string>, // "beta"
      },

      clientId: <UUID>, // optional
      profileGroupId: <UUID>, // optional
      environment: { ... }, // optional, not all pings contain the environment
      payload: { ... }, // the actual payload data for this ping type
    }