From 26a029d407be480d791972afb5975cf62c9360a6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 02:47:55 +0200 Subject: Adding upstream version 124.0.1. Signed-off-by: Daniel Baumann --- .../components/telemetry/docs/data/crash-ping.rst | 264 +++++++++++++++++++++ 1 file changed, 264 insertions(+) create mode 100644 toolkit/components/telemetry/docs/data/crash-ping.rst (limited to 'toolkit/components/telemetry/docs/data/crash-ping.rst') diff --git a/toolkit/components/telemetry/docs/data/crash-ping.rst b/toolkit/components/telemetry/docs/data/crash-ping.rst new file mode 100644 index 0000000000..38f5d6aaef --- /dev/null +++ b/toolkit/components/telemetry/docs/data/crash-ping.rst @@ -0,0 +1,264 @@ +Crash ping +========== + +This ping is captured after the main Firefox process crashes or after a child process +process crashes, whether or not the crash report is submitted to +crash-stats.mozilla.org. It includes non-identifying metadata about the crash. + +This ping is sent either by the ``CrashManager`` or by the crash reporter +client. The ``CrashManager`` is responsible for sending crash pings for the +child processes crashes, which are sent right after the crash is detected, +as well as for main process crashes, which are sent after Firefox restarts +successfully. The crash reporter client sends crash pings only for main process +crashes whether or not the user also reports the crash. The crash reporter +client will not send the crash ping if telemetry has been disabled in Firefox. + +The environment block that is sent with this ping varies: if Firefox was running +long enough to record the environment block before the crash, then the environment +at the time of the crash will be recorded and ``hasCrashEnvironment`` will be true. +If Firefox crashed before the environment was recorded, ``hasCrashEnvironment`` will +be false and the recorded environment will be the environment at time of submission. + +The client ID is submitted with this ping. + +The metadata field holds a subset of the crash annotations, all field values +are stored as strings but some may be interpreted either as numbers or +boolean values. Numbers are integral unless stated otherwise in the +description. Boolean values are set to "1" when true, "0" when false. If +they're absent then they should be interpreted as false. + +Structure: + +.. code-block:: js + + { + type: "crash", + ... common ping data + clientId: , + environment: { ... }, + payload: { + crashDate: "YYYY-MM-DD", + crashTime: , // per-hour resolution + version: 1, + sessionId: , // Telemetry ID of crashing session. May be missing for crashes that happen early in startup + crashId: , // Optional, ID of the associated crash + minidumpSha256Hash: , // SHA256 hash of the minidump file + processType: , // Type of process that crashed, see below for a list of types + stackTraces: { ... }, // Optional, see below + metadata: { // Annotations saved while Firefox was running. See CrashAnnotations.yaml for more information + ProductID: "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}", + ProductName: "Firefox", + ReleaseChannel: , + Version: , + BuildID: "YYYYMMDDHHMMSS", + AsyncShutdownTimeout: , // Optional, present when a shutdown blocker failed to respond within a reasonable amount of time + AvailablePageFile: , // Windows-only, available paging file in bytes + AvailablePhysicalMemory: , // Windows-only, available physical memory in bytes + AvailableSwapMemory: , // macOS- and Linux-only, available swap space + AvailableVirtualMemory: , // Windows-only, available virtual memory in bytes + BackgroundTaskName: "task_name", // Optional, if the app was invoked in background task mode via `--backgroundtask task_name` + BlockedDllList: , // Windows-only, see WindowsDllBlocklist.cpp for details + BlocklistInitFailed: "1", // Windows-only, present only if the DLL blocklist initialization failed + CrashTime: