Skip to content

Commit 553aab2

Browse files
konraddysputjasoncdavis0Dautery91
authored
Release 3.6.1 (#108)
* Version bump * Update README.md * Update README.md * Client side unwinding improvements (#107) * Version 3.6.1 preparation * Changelog update * Changelog typo Co-authored-by: jasoncdavis0 <jdavis@backtrace.io> Co-authored-by: Drake Autery <54295241+Dautery91@users.noreply.github.com>
1 parent dcc7bf5 commit 553aab2

File tree

11 files changed

+35
-17
lines changed

11 files changed

+35
-17
lines changed
-1.05 MB
Binary file not shown.
-36 KB
Binary file not shown.
-516 KB
Binary file not shown.
-28 KB
Binary file not shown.
-884 KB
Binary file not shown.

Android/lib/x86/libnative-lib.so

-32 KB
Binary file not shown.

CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
# Backtrace Unity Release Notes
22

3+
## Version 3.6.1
4+
5+
Bugfixes
6+
7+
- Fixed unhandled exception caused by truncated stack trace
8+
9+
Improvements
10+
11+
- improved client side unwinding support on Android
12+
313
## Version 3.6.0
414

515
New functionality

README.md

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ catch(Exception exception)
7070
# Platforms Supported
7171

7272
Backtrace-unity has been tested and certified for games deployed on the following platforms:
73+
7374
- Mobile - Android, iOS
7475
- PC - Windows, Mac
7576
- Web - WebGL
@@ -78,7 +79,7 @@ Backtrace-unity has been tested and certified for games deployed on the followin
7879
There are some differences in capabilities that backtrace-unity provides based on the platform. Major capabilities are summarized as follows:
7980

8081
- All Platforms - Errors, Unhandled Exceptions, Handled Exceptions, Custom Indexable Metadata, File Attachments*, Breadcrumbs, Automatic attachment of Screenshots, Client Side Deduplication Rules*, Client Side Submission Filtering, Client Side Submission Limits, Crash Free Metrics (except WebGL), Performance Diagnostics, Offline Database\*(Except Nintendo Switch)
81-
- Android -Identified by attribute `uname.sysname` = Android; ANRs (Hangs), Native Process and Memory Information, Java Exception Handler (Plugins, Exported Game in Android Studio), NDK crashes, low memory warnings. Client-side unwinding option for NDK 19+ (Unity 2019+).
82+
- Android -Identified by attribute `uname.sysname` = Android; ANRs (Hangs), Native Process and Memory Information, Java Exception Handler (Plugins, Exported Game in Android Studio), NDK crashes, low memory warnings. Client-side unwinding option for NDK 19+ (Unity 2019+).
8283
- iOS - Identified by attribute `uname.sysname` = IOS; ANRs (Hangs), Native Engine, Memory and Plugin Crashes.
8384
- WebGL - Identified by attribute `uname.sysname` = WebGL. The attribute `device.model` is currently used to share the browser information. Note that stacktraces for WebGL errors are only available if you choose to enable them in the Publishing Settings / Enable Exceptions drop down. More details [here](https://docs.unity3d.com/Manual/webgl-building.html).
8485
- Switch - Identified by attribute `uname.sysname` = Switch. Note that the attribute GUID is regenerated with each Switch restart (It is not an accurate count of number of Users or Devices. It is a count of Switch Sessions). Note that the current release does no support Offline Database or related features.
@@ -132,8 +133,7 @@ One of the integration paths require to create game object in your game scene. I
132133
attributes: attributes);
133134
```
134135

135-
If you need to use more advanced configuration, `Initialize` method accepts a `BacktraceConfiguration` scriptable object. See below:
136-
136+
If you need to use more advanced configuration, `Initialize` method accepts a `BacktraceConfiguration` scriptable object. See below:
137137

138138
```csharp
139139
var configuration = ScriptableObject.CreateInstance<BacktraceConfiguration>();
@@ -182,14 +182,15 @@ The following is a reference guide to the Backtrace Client fields:
182182
- Handle unhandled exceptions: Toggle this on or off to set the library to handle unhandled exceptions that are not captured by try-catch blocks.
183183
- Symbols upload token - If you want to upload Unity debug symbols for Android NDK Native Crash debugging, enter your Backtrace Symbol upload token here. This option is available only in Android build.
184184
- Log random sampling rate - Enables a random sampling mechanism for DebugLog.error messages - **by default** sampling is equal to **0.01** - which means only **1%** of randomply sampling **reports will be send** to Backtrace. If you would like to send all DebugLog.error messages to Backtrace - please replace 0.01 value with 1.
185-
- Game Object Depth Limit: Allows developer to filter number of game object childrens in Backtrace report.
186-
- REMOVED: Collect last n game logs: Collect last n number of logs generated by game. This is not part of Breadcrumbs
187-
- Enabled performance statistics: Allows `BacktraceClient` to measure execution time and include performance information as report attributes.
188-
- Ignore SSL validation: Unity by default will validate ssl certificates. By using this option you can avoid ssl certificates validation. However, if you don't need to ignore ssl validation, please set this option to false.
185+
- Game Object Depth Limit: Allows developer to filter number of game object childrens in Backtrace report.
186+
- REMOVED: Collect last n game logs: Collect last n number of logs generated by game. This is not part of Breadcrumbs
187+
- Enabled performance statistics: Allows `BacktraceClient` to measure execution time and include performance information as report attributes.
188+
- Ignore SSL validation: Unity by default will validate ssl certificates. By using this option you can avoid ssl certificates validation. However, if you don't need to ignore ssl validation, please set this option to false.
189189

190190
- Crash Free Metrics Reporting
191-
- Enable crash free metrics reporting. This toggles the periodic transmission of session information to the Backtrace endpoints. This will enable metrics such as crash free users and crash free sessions. Metric events by default are sent when the game starts, when the game is closed / ends, and every 30 minutes while the game is running. So even if a user starts up the game and quits after only a couple of minutes, session and user metrics will still be sent. See the "Crash Free Metrics" section below for more information on this feature.
191+
- Enable crash free metrics reporting. This toggles the periodic transmission of session information to the Backtrace endpoints. This will enable metrics such as crash free users and crash free sessions. Metric events by default are sent when the game starts, when the game is closed / ends, and every 30 minutes while the game is running. So even if a user starts up the game and quits after only a couple of minutes, session and user metrics will still be sent. See the "Crash Free Metrics" section below for more information on this feature.
192192
- Attachments Paths
193+
193194
- Paths to attachments to be included for all report types.
194195

195196
- Backtrace Database Configuration
@@ -205,8 +206,8 @@ The following is a reference guide to the Backtrace Client fields:
205206
- Native crashes
206207
- Capture native crashes: This option will appear for games being deployed to Android or iOS and will allow Backtrace to capture and symbolicate native stack traces from crashes impacting the Unity Engine or any Unity Plugin.
207208
- Capture ANR (Application not responding): This option will appear for Android or iOS and allow Backtrace to capture Hang reports. If enabled, a report will be generated if an application is not respinsive for more than 5 seconds.
208-
- Send Out of memory exceptions to Backtrace: This option will appear for Android or iOS and allow Backtrace to follow the behavior defined in the [Android](#android-specific-information) or [iOS](#ios-specific-information) sections.
209-
- Enable client-side unwinding: This option will appear for supported versions of Android (NDK 19; Unity 2019+), and allow Backtrace to perform client side unwinding of native crashes. Please see [Android Client-side unwinding](#client-side-unwinding) for details.
209+
- Send Out of memory exceptions to Backtrace: This option will appear for Android or iOS and allow Backtrace to follow the behavior defined in the [Android](#android-specific-information) or [iOS](#ios-specific-information) sections.
210+
- Enable client-side unwinding: This option will appear for supported versions of Android (NDK 19; Unity 2019+), and allow Backtrace to perform client side unwinding of native crashes. Please see [Android Client-side unwinding](#client-side-unwinding) for details.
210211
- Minidump type: Type of minidump that will be attached to Backtrace report in the report generated on Windows machine.
211212
- Attach Unity Player.log: Add Unity player log file to Backtrace report. NOTE: This feature is available only on desktop - Windows/MacOS/Linux.
212213
- Attach screenshot: Generate and attach screenshot of frame as exception occurs.
@@ -227,7 +228,7 @@ The backtrace-unity library includes support for capturing Android NDK crashes a
227228

228229
## Client side unwinding
229230

230-
Client side unwinding may be useful if you are unable to upload all the symbols for your application. For example, if you are having stability issues in system or other opaque libraries on the devices where your game is deployed, it is better to unwind the callstack on the crashing application (i.e: the client). This may not provide the same callstack quality as with debugging symbols, but will give you debugging information you would otherwise not have if you don't have debugging symbols available.
231+
Client side unwinding may be useful if you are unable to upload all the symbols for your application. For example, if you are having stability issues in system or other opaque libraries on the devices where your game is deployed, it is better to unwind the callstack on the crashing application (i.e: the client). This may not provide the same callstack quality as with debugging symbols, but will give you debugging information you would otherwise not have if you don't have debugging symbols available.
231232

232233
This function is enabled in backtrace-unity via the a toggle under `Native Crashes` in Backtrace UI Panel in Unity (see below) or via the BacktraceConfiguration object and the `.ClientSideUnwinding = true;`. See an example in the [Integrating into your project via code](#integrating-into-your-project-via-code)
233234

@@ -262,7 +263,7 @@ To generate `symbols.zip` archive make sure:
262263

263264
Backtrace offers to upload symbols automatically from Unity Editor to your Backtrace instance. Backtrace symbols upload pipeline will be triggered after successfull build of il2cpp Android game and when Symbols upload token is available in Backtrace Client options. After successfull build, upload pipeline will confirm symbols upload.
264265

265-
If you build outside the Unity Editor and need to manually upload symbols to Backtrace, you must rename symbols generated by Unity end simply with a `.so` extension. By default, symbol files within the .zip will end with extension `.sym.so`. or `.dbg.so` Backtrace will only match symbols to files based on the ending with `.so` extension. Please ensure all files have a single `.so` extention before uploading the zip.
266+
If you build outside the Unity Editor and need to manually upload symbols to Backtrace, you must rename symbols generated by Unity end simply with a `.so` or a `.so.debug` extension. By default, symbol files within the .zip will end with extension `.sym.so`. or `.dbg.so` Backtrace will only match symbols to files based on the ending with `.so` or `.so.debug` extension. Please ensure all `.sym.so` files are renamed to have a single `.so` extention, and all `.dbg.so` files are renamed to have a single `.so.debug` extension before uploading the zip.
266267

267268
To learn more about how to submit those symbol files to Backtrace, please see the Project Settings / Symbols. You can manage submission tokens, upload via the UI, or configure external Symbol Servers to connect and discover required symbols. Please review additional documentation [here](https://support.backtrace.io/hc/en-us/articles/360040517071-Symbolication-Overview).
268269

@@ -483,18 +484,18 @@ GetComponent<BacktraceClient>().Breadcrumbs.Info("Player Base Upgraded", new Dic
483484

484485
## Crash Free Metrics <a name="crash-free-metrics"></a>
485486

486-
Crash free metrics can be enabled with the toggle on the Backtrace Client Configuration.
487+
Crash free metrics can be enabled with the toggle on the Backtrace Client Configuration.
487488

488489
![CrashFreeToggle](./Documentation~/images/CrashFreeMetricToggleBTUnity.png)
489490

490-
Once enabled, unique application launches and unique player identifiers (default: guid) will be submitted to Backtrace so you will be able to get an overview in our web console of how many errors, hangs, crashes and memory problems occur compared to all active users for a given platform, version, and more.
491+
Once enabled, unique application launches and unique player identifiers (default: guid) will be submitted to Backtrace so you will be able to get an overview in our web console of how many errors, hangs, crashes and memory problems occur compared to all active users for a given platform, version, and more.
491492

492493
![image](https://user-images.githubusercontent.com/726645/120375869-7f560380-c2d8-11eb-80bf-b15ea90c0ad3.png)
493494
![image](https://user-images.githubusercontent.com/726645/120376224-d8be3280-c2d8-11eb-88a9-5c16d49e263b.png)
494495

495496
Note! This functionality is supported on all Unity supported platforms **except WebGL**.
496497

497-
As mentioned above, these session events are sent on application startup, when the game is closed/ends, and every 30 minutes while the game is running.
498+
As mentioned above, these session events are sent on application startup, when the game is closed/ends, and every 30 minutes while the game is running.
498499

499500
You can also enable this feature at runtime via BacktraceClient.EnableMetrics().
500501

README_ja_JP.md.meta

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Runtime/BacktraceClient.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ namespace Backtrace.Unity
2424
/// </summary>
2525
public class BacktraceClient : MonoBehaviour, IBacktraceClient
2626
{
27-
public const string VERSION = "3.6.0";
27+
public const string VERSION = "3.6.1";
2828

2929
public BacktraceConfiguration Configuration;
3030

0 commit comments

Comments
 (0)