109 lines
3.8 KiB
ReStructuredText
109 lines
3.8 KiB
ReStructuredText
Ecosystem Telemetry (obsolete)
|
|
==============================
|
|
|
|
This module transmits Ecosystem Telemetry from Firefox Desktop.
|
|
It is only sent for Firefox Account users, using a single ping type
|
|
"account-ecosystem"
|
|
|
|
.. note::
|
|
|
|
You might like to read the `background information on Ecosystem
|
|
Telemetry <https://mozilla.github.io/ecosystem-platform/docs/features/firefox-accounts/ecosystem-telemetry/>`_
|
|
|
|
The existing telemetry client id is **not** submitted with the ping, but an
|
|
"ecosystem client id" is - this has the same semantics as the existing
|
|
client id, although is a different value, and is not sent in any other ping.
|
|
|
|
An anonymized user ID is submitted with each ping - `read more about these
|
|
IDs and how they're designed to safeguard user privacy <https://mozilla.github.io/ecosystem-platform/docs/features/firefox-accounts/ecosystem-telemetry/>`_
|
|
|
|
A reduced Telemetry environment is submitted in the ping, as described below.
|
|
|
|
Environment
|
|
-----------
|
|
|
|
In an effort to reduce the possibility of fingerprinting, we only provide the
|
|
following environment subset:
|
|
|
|
.. code-block:: js
|
|
|
|
{
|
|
settings: {
|
|
locale: <string>, // e.g. "it", null on failure
|
|
},
|
|
system: {
|
|
memoryMB: <number>,
|
|
os: {
|
|
name: <string>, // e.g. "Windows_NT", null on failure
|
|
version: <string>, // e.g. "6.1", null on failure
|
|
locale: <string>, // "en" or null on failure
|
|
},
|
|
cpu: {
|
|
speedMHz: <number>, // cpu clock speed in MHz
|
|
}
|
|
},
|
|
profile: {
|
|
creationDate: <integer>, // integer days since UNIX epoch, e.g. 16446
|
|
firstUseDate: <integer>, // integer days since UNIX epoch, e.g. 16446 - optional
|
|
}
|
|
}
|
|
|
|
account-ecosystem ping
|
|
----------------------
|
|
|
|
.. code-block:: js
|
|
|
|
{
|
|
"type": "account-ecosystem",
|
|
... common ping data
|
|
"environment": { ... }, // as above
|
|
"payload": {
|
|
"reason": <string>, // Why the ping was submitted
|
|
"ecosystemAnonId": <string>, // The anonymized ID, as described above.
|
|
"ecosystemClientId": <guid>, // The ecosystem client ID as described above.
|
|
"duration": <number>, // duration since ping was last sent or since the beginning of the Firefox session in seconds
|
|
"histograms": {...},
|
|
"keyedHistograms": {...},
|
|
"scalars": {...},
|
|
"keyedScalars": {...},
|
|
}
|
|
}
|
|
|
|
reason
|
|
~~~~~~
|
|
The ``reason`` field contains the information about why the "account-ecosystem" ping was submitted:
|
|
|
|
* ``periodic`` - Sent roughly every 24 hours
|
|
* ``shutdown`` - Sent on shutdown
|
|
* ``logout`` - Sent when the user logs out
|
|
|
|
histograms and keyedHistograms
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
This section contains the :doc:`../collection/histograms` that are valid for the account-ecosystem ping, per process.
|
|
The recorded histograms are described in `Histograms.json <https://searchfox.org/mozilla-central/source/toolkit/components/telemetry/Histograms.json>`_, marked with the `account-ecosystem` store.
|
|
|
|
scalars and keyedScalars
|
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
This section contains the :doc:`../collection/scalars` that are valid for the account-ecosystem ping, per process.
|
|
Scalars are only submitted if data was added to them.
|
|
The recorded scalars are described in `Scalars.yaml <https://searchfox.org/mozilla-central/source/toolkit/components/telemetry/Scalars.yaml>`_, marked with the `account-ecosystem` store.
|
|
|
|
Send behavior
|
|
-------------
|
|
|
|
Without an account
|
|
~~~~~~~~~~~~~~~~~~
|
|
|
|
Never.
|
|
|
|
When a user logs into Firefox Accounts, this ping is submitted as described in
|
|
"With an account" below. No ping is immediately sent.
|
|
|
|
With an account
|
|
~~~~~~~~~~~~~~~
|
|
|
|
The ping is submitted; roughly every 24 hours with reason *periodic*. On
|
|
shutdown this ping is submitted with reason *shutdown*.
|
|
|
|
If the user logs out and disconnects the account, this ping is submitted with
|
|
reason *logout*. While logged out, no pings will be submitted.
|