---
title: diagnosticReports
framework: metrickit
role: symbol
role_heading: Instance Property
path: metrickit/metricmanager/diagnosticreports
---

# diagnosticReports

An asynchronous sequence that delivers diagnostic reports as individual events.

## Declaration

```swift
final var diagnosticReports: some AsyncSequence<DiagnosticReport, Never> { get }
```

## Mentioned in

Monitoring app performance with MetricKit

## Discussion

Discussion Iterate diagnosticReports in a long-lived Task to receive DiagnosticReport values. Each iteration yields a single diagnostic event, such as a crash, hang, or CPU exception. The sequence never throws. Task {     for await report in manager.diagnosticReports {         switch report.result {         case .crash(let diagnostic): handleCrash(diagnostic)         case .hang(let diagnostic): handleHang(diagnostic)         @unknown default: break         }     } }

## See Also

### Reports

- [metricReports](metrickit/metricmanager/metricreports.md)
