Dear Apple Developer Support Team,
I am writing to seek clarification on the timeline behavior and app status associated with the MetricKit cpuExceptionDiagnostics payload.
In a recent diagnostic log collected from production, we observed the following values:
timeStampBegin: "2026-07-07 10:37:00"
timeStampEnd: "2026-07-07 10:37:00"
totalSampledTime: "168 sec"
Since both timeStampBegin and timeStampEnd share the exact same second (10:37:00), but the totalSampledTime indicates a continuous sampling duration of 168 seconds, we are having trouble accurately correlating this incident with our internal server logs.
Could you please clarify the following questions:
What exactly does the timestamp "2026-07-07 10:37:00" represent? Is it the sampling start time, the sampling end time, or the moment the diagnostic log was generated/written by the system?
If "2026-07-07 10:37:00" represents the log generation time (or the moment the exception was triggered), how should we determine the actual start and end times of the 168-second sampling window? For instance, does it mean the sampling occurred strictly before this timestamp (from 10:34:12 to 10:37:00), or is there a different calculation method?
Does a cpuExceptionDiagnostics event imply that the app crashed or was terminated by the OS? Or is it merely a non-fatal telemetry log capturing heavy CPU usage/resource limit violations while the app remained running?
Understanding the precise timeline and lifecycle impact of MetricKit diagnostics is crucial for us to correlate client-side resource issues with backend performance and user activities.
Thank you for your time and guidance.
Best regards