[−][src]Module sync15_traits::telemetry
Manage recording sync telemetry. Assumes some external telemetry library/code which manages submitting.
Structs
Engine | One engine's sync. |
EngineIncoming | Incoming record for an engine's sync |
EngineOutgoing | Outgoing record for an engine's sync |
Event | A generic "Event" - suitable for all kinds of pings (although this module only cares about the sync ping) |
Problem | |
SyncTelemetry | A single sync. May have many engines, may have its own failure. |
SyncTelemetryPing | The Sync ping payload, as documented at https://firefox-source-docs.mozilla.org/toolkit/components/telemetry/telemetry/data/sync-ping.html. May have many syncs, may have many events. However, due to the architecture of apps which use these components, this payload is almost certainly not suitable for submitting directly. For example, we will always return a payload with exactly 1 sync, and it will not know certain other fields in the payload, such as the hashed FxA device ID (see https://searchfox.org/mozilla-central/rev/c3ebaf6de2d481c262c04bb9657eaf76bf47e2ac/services/sync/modules/browserid_identity.js#185 for an example of how the device ID is constructed). The intention is that consumers of this will use this to create a "real" payload - eg, accumulating until some threshold number of syncs is reached, and contributing additional data which only the consumer knows. |
Validation | |
WhenTook | What we record for 'when' and 'took' in a telemetry record. |
Enums
Stopwatch | What we track while recording 'when' and 'took. It serializes as a WhenTook, except when .finished() hasn't been called, in which case it panics. |
SyncFailure | A Sync failure. |