Diagnostics Features
Important
Visual Studio App Center is scheduled for retirement on March 31, 2025. While you can continue to use Visual Studio App Center until it is fully retired, there are several recommended alternatives that you may consider migrating to.
In this section, you'll learn about the feature set available for the App Center’s Diagnostics service.
Crash and Errors Analytics
In App Center Diagnostics, you can view analytics data generated automatically by App Center to understand when a crash or error occurs in your app.
By default, App Center displays an app's crashes and errors per day in a side-by-side view.
Using the top-left tabs, drill down into Crashes and Errors. When you do this, the left chart indicates the number of crashes/errors per day, and the right chart shows the number of affected users. Filter the charts by app version, time frame, and status for a more focused view.
Note
App Center filters potentially sensitive information. Examples of sensitive information that will be filtered are URLs, JSON strings and request IDs.
Grouping
App Center Diagnostics groups crashes and errors by similarities, such as reason for the issue and where the issue occurred in the app. For each crash and error group, App Center displays the line of code that failed, the class or method name, file name, line number, crash, or error type and message for you to better understand these groups at a glance. Select a group to view more information, and access a list of detailed issues reports and logs. This allows you to dive even deeper and use our feature set to better understand your app's behavior during a crash or an error.
If a crash is caused by a failed call to a URL (such as "Error calling azure.com or google.com") App Center can group crashes by that URL (for example all failed to call azure.com will be grouped together and failed to call google.com will be grouped together). However, because we remove URLs prepended with either HTTP or HTTPS from the crash log, this grouping will only work when avoiding this syntax for example: "Error calling http://azure.com" will not be grouped with other azure calls but "Error calling azure.com" will be grouped with similar error reports.
User Identification
App Center Diagnostics allows you to attach a user ID to your crashes and errors. To do so, use the App Center SDK in your targeted platform Android, Apache Cordova, iOS, macOS, React Native, tvOS, Unity, UWP, WPF/WinForms, and MAUI/Xamarin. You'll find the user ID associated to a crash or error when clicking on an issue inside of a group.
After attaching a user ID, you can use App Center's search feature to search for crashes with the specified ID. Learn how to do this by following App Center's search documentation.
Attachments
In the App Center Diagnostics UI, you can view and download binary and text attachments of your crash and error reports.
You can learn how to add attachments to your crash reports by reading the SDK Crashes documentation for your Android, iOS, macOS, React Native, UWP, WPF/WinForms, and MAUI/Xamarin apps.
Attachments for handled errors are only supported for Android, Unity, UWP, WPF, WinForms, and Xamarin platforms. Learn how to add attachments to your error reports in the SDK documentation for your Android, Unity, UWP, WPF/WinForms, and MAUI/Xamarin apps.
To view and download the attachments, select a crash or error group, a specific device report and then click on the attachments tab.
Events Before A Crash
Track events leading up to a crash to capture useful information about the state of your app.
To define a custom event, check out our SDK Documentation for Android, iOS, macOS, React Native, Windows and MAUI/Xamarin.
To view events before a crash, select a crash group, a specific device report, and then click on the events tab.
Key Value Pairs
You can tailor error reports sent to App Center to include additional context for the error by passing a dictionary of string values (as key/value pairs) to the TrackError
method. These properties are optional. To set key value pairs, take a look at our Android, MAUI/Xamarin, Unity, UWP, and WPF/WinForms documentation.
Note
This feature is only supported for Android, iOS, Xamarin, React Native, Unity, UWP, WinForms and WPF Errors today.
Export Diagnostics Data
App Center can export diagnostics (crashes and errors) raw data to Azure. Export diagnostics data to Blob Storage for customization of the data.
To export crashes, attachments and errors, you must call the Export Configurations API:
POST /v0.1/apps/{owner_name}/{app_name}/export_configurations
In the exportEntities
field of the API property, you must indicate what type of data you wish to export: crashes, errors, attachments. When doing so, the full symbolicated crashes and corresponding stack traces will be exported.
Learn more about the benefits of, and how to export your data in the export documentation.
Threads
In a crash report, you can see the current threads that were active when the app crashed. The thread that crashed is highlighted in red for you to better understand the state of the app.
Note
On Windows, the report shows only the stack trace from the thread that crashed. Showing the state of other threads at the moment of the crash isn't supported on Windows.
Configure Alerts
Stay on top of your crashes by configuring your App Center app definition settings to send an email notification. You can configure this setting per app to either send an email immediately when a new crash group is created, or send a daily summary email with your app's top crashes. To configure these alerts:
- Log into App Center and select your app
- In the left menu, navigate to Settings
- Click on Email Notifications
- Select Immediately, Daily, or Never. The default configuration is set to Never.
You can learn more about notification in our App Center dashboard documentation.
Create a Bug Tracker
You can integrate third-party bug tracker tools with App Center to stay informed and better manage your crashes. Read the bug tracker documentation to learn how to get started.
Upload reports to App Center
The documentation to upload crashes via API has moved.