You can click into an issue and get a detailed event report in the DevOps & Engagement > Crashlytics dashboard of the Firebase console. You can customize those reports to help you better understand what's happening in your app and the circumstances around events reported to Crashlytics.
Log custom keys (Apple, Android, Web, Flutter, and Unity)
Log custom log messages (Apple, Android, Flutter, and Unity)
Log user identifiers (Apple, Android, Flutter, and Unity)
Report exceptions (Apple, Android, Web, Flutter, and Unity)
Get breadcrumb logs (Apple, Android, Flutter, and Unity)
Enable opt-in reporting (Apple, Android, Flutter, and Unity)
Force flush telemetry records (Web only)
Configure sampling rate (Web only)
Disable or enable telemetry collection (Web only)
Include GWP-ASan reports (Android NDK and Unity only)
Log custom keys
Custom keys help you get the specific state of your app leading up to a crash. You can associate arbitrary key-value pairs with your crash reports, then use the custom keys to search and filter crash reports in the Firebase console.
View instructions for logging custom keys: iOS+ Android Web Flutter Unity
Log custom log messages
To give yourself more context for the events leading up to a crash, you can add custom Crashlytics logs to your app. Crashlytics associates the logs with your crash data and displays them in the Crashlytics dashboard.
View instructions for logging custom log messages: iOS+ Android Flutter Unity
Log user identifiers
To diagnose an issue, it's often helpful to know which of your users experienced a given crash. Crashlytics includes a way to anonymously identify users in your crash reports.
View instructions for logging user identifiers: iOS+ Android Flutter Unity
Report exceptions
In addition to automatically reporting your app's fatal events (like crashes), the Crashlytics SDK can report non-fatal exceptions as non-fatal events. For Futter and Unity, if you have exceptions that are expected, you can have the SDK report them as non-fatal events, as well. For web apps, you can manually report handled exceptions in addition to uncaught exceptions and routing errors.
For mobile apps, these non-fatal events are logged on-device and then sent along with the next fatal event report or when the end-user restarts the app.
View instructions for reporting exceptions: iOS+ Android Web Flutter Unity
Get breadcrumb logs
Breadcrumb logs give you a better understanding of the interactions that a user had with your app leading up to a crash, non-fatal, or ANR event. These logs can be helpful when trying to reproduce and debug an issue.
View instructions for getting breadcrumb logs: iOS+ Android Flutter Unity
Enable opt-in reporting
By default, Crashlytics automatically collects crash reports for all your app's users. To give users more control over the data they send, you can enable opt-in reporting by disabling automatic reporting and only sending data to Crashlytics when you choose to in your code.
View instructions for enabling opt-in reporting: iOS+ Android Flutter Unity
Force flush telemetry records
By default, the web telemetry engine batches logs in memory before uploading them. For short-lived execution environments, you can force an immediate upload of queued errors before the execution context terminates or reloads.
View instructions for flushing telemetry records: Web
Configure sampling rate
For web apps, you can configure a sampling rate in the Firebase console or using the Firebase Telemetry Admin API to sample a proportion of user sessions and control telemetry volume and cost.
View instructions for configuring sampling rate: Web
Disable or enable telemetry collection
For web apps, telemetry collection is enabled by default when you set up Crashlytics. You can disable or re-enable telemetry collection endpoints dynamically using the Firebase Telemetry Admin API.
View instructions for disabling or enabling telemetry collection: Web
Include GWP-ASan reports to debug memory corruption issues
Crashlytics can help you debug crashes caused by native memory errors by collecting GWP-ASan reports. These memory-related errors can be associated with memory corruption within your app, which is the leading cause of app security vulnerabilities.
View instructions for including GWP-ASan reports: Android NDK Unity