Understand User Reporting
After you Set up User Reporting, user reports appear on the Unity Dashboard. If they don’t, verify that your report is not over 10MB in size.
View user reports
- Sign in to the Unity Dashboard with your Unity ID.
- Select the relevant project.
- From the main menu, select the + button and go to Cloud Diagnostics > User Reporting.
- Select a report to view its details.
The User Reporting page shows the reports you’ve received. Select a user report to open its details.
You can filter the reports using the Dimensions and Value drop-down menus. To apply filters, select Apply. To remove any report filters, select Clear. For more information on creating custom dimensions, see Configure User Reporting.
The top of the User Reporting page displays your current report limits and usage, depending on your Unity plan. To increase your report count limit and usage, upgrade to Advanced Cloud Diagnostics with Unity Pro or higher.
Understand user report details
Select a user report card from the User Reporting page to open its details.
The subsequent page displays the detailed data for the selected report. The top of the page displays the date the report was received and a summary description.
To delete or download the report, use the Report actions drop-down menu.
The User report details page also includes data such as metrics, screenshots, fields, device metadata, and events:
- Metrics: The Metrics section of the report shows the frame number range the metric was collected in, the average value of the metric, and the value range of the particular metric.
- Screenshots: This section includes any screenshots submitted with the report. Select the image to view a screenshot in more detail.
- Fields: This section displays any user-defined dimension-value fields submitted with the report.
- Attachments: This section includes any attachments submitted with the report. To download an attachment, select either the download icon or the attachment name.
- Metadata: This section provides detailed information about the device and the app from which the report was made, including any custom metadata you may have added.
- Events: This section displays console log messages or messages manually provided by the developer. An event entry consists of:
- Event: A summary of the event that occurred.
- Frame: The frame at which the event occurred.
- Date and time: The date and time at which the event occurred.
- Status: The event status. The different statuses include Informational (blue circle), Success (green circle), Warning (yellow triangle with an exclamation mark), and Error (red circle with an exclamation mark).
Send user report from an unhandled exception
Note: While this approach is possible, it's strongly recommended to use the Crash and Exception Reporting feature of Cloud Diagnostics to handle unhandled exceptions. This feature gives a full stack trace for the unhandled exception, the logs from the event, and track occurrences and discover patterns, visible from the Unity Dashboard. Crash and Exception Reporting aggregates crash and exception reports.
You can send a user report when there's an unhandled exception, to bring over log files and more useful data.
Add the following script to a sample scene of the User Reporting package:
void OnEnable()
{
Application.logMessageReceived += UhandledExceptionCallback;
}
void OnDisable()
{
Application.logMessageReceived -= UnhandledExceptionCallback;
}
void UnhandledExceptionCallback(string condition, string stackTrace, LogType type)
{
if (type == LogType.Exception)
{
// Insert your desired behavior here, such as creating and sending a user report.
}
}
This approach comes from the Application.logMessageReceived
C# Event which triggers in many situations, including unhandled exceptions. By checking that the LogType of the message is Exception
, the code only executes when an unhandled exception occurs. Be mindful to remove your callback from the event when/if the response is no longer necessary for performance considerations.