In the Crashlytics dashboard, you can click into an issue and get a detailed event report.
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
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 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.
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 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
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