Name Description Size
ClientID.sys.mjs Checks if client ID has a valid format. @param {String} id A string containing the client ID. @return {Boolean} True when the client ID has valid format, or False otherwise. 10743
TelemetryArchive.sys.mjs Get a list of the archived pings, sorted by the creation date. Note that scanning the archived pings on disk is delayed on startup, use promizeInitialized() to access this after scanning. @return {Promise<sequence<Object>>} A list of the archived ping info in the form: { id: <string>, timestampCreated: <number>, type: <string> } 3449
TelemetryController.sys.mjs -*- js-indent-level: 2; indent-tabs-mode: nil -*- 1654
TelemetryControllerBase.sys.mjs -*- js-indent-level: 2; indent-tabs-mode: nil -*- 4712
TelemetryControllerContent.sys.mjs -*- js-indent-level: 2; indent-tabs-mode: nil -*- 2534
TelemetryControllerParent.sys.mjs -*- js-indent-level: 2; indent-tabs-mode: nil -*- 50122
TelemetryEnvironment.sys.mjs This is a policy object used to override behavior for testing. 72362
TelemetryReportingPolicy.sys.mjs This is a policy object used to override behavior within this module. Tests override properties on this object to allow for control of behavior that would otherwise be very hard to cover. 16679
TelemetryScheduler.sys.mjs This is a policy object used to override behavior for testing. 14053
TelemetrySend.sys.mjs This module is responsible for uploading pings to the server and persisting pings that can't be send now. Those pending pings are persisted on disk and sent at the next opportunity, newest first. 52838
TelemetryStorage.sys.mjs -*- js-indent-level: 2; indent-tabs-mode: nil -*- 68079
TelemetryTimestamps.sys.mjs This module's purpose is to collect timestamps for important application-specific events. The TelemetryController component attaches the timestamps stored by this module to the telemetry submission, substracting the process lifetime so that the times are relative to process startup. The overall goal is to produce a basic timeline of the startup process. 1760
TelemetryUtils.sys.mjs When telemetry is disabled, identifying information (such as client ID) should be removed. A topic event is emitted with a subject that matches this constant. When this happens, other systems that store identifying information about the client should delete that data. Please ask the Firefox Telemetry Team before relying on this topic. Here is an example of listening for that event: const { TelemetryUtils } = ChromeUtils.importESModule("resource://gre/modules/TelemetryUtils.sys.mjs"); class YourClass { constructor() { Services.obs.addObserver(this, TelemetryUtils.TELEMETRY_UPLOAD_DISABLED_TOPIC); } observe(subject, topic, data) { if (topic == TelemetryUtils.TELEMETRY_UPLOAD_DISABLED_TOPIC) { // Telemetry was disabled // subject and data are both unused } } } 9450