Add Sentry Error Tracking (#2670)

* Add Sentry Error Tracking

* Omit personally identifiable information and add additional sentry context

* Remove debug message

* Make sentry opt-out and add related notices and strings

Also add Minecraft Version to error context

* Update build to send release info to sentry

* Adjust sentry error tracking

- Send the user-friendly Minecraft Version in the error logs
- Capture exceptions in more parts of the application

We now capture exceptions from the following locations:
- Protocol18 (1.8+) Packet errors
- Errors during client initialization phase (When client is about to start, session keys are NEVER sent to sentry)

* Make Sentry DSN configurable and repository-specific

The Sentry DSN will automatically be filled out on the main repository through the Github Actions build.

* Update build-and-release.yml

Update sed command

* style: change variable name

nitpick, just to make it a little bit more descriptive

* Add Sentry branding in README.

* remove old code (merge conflict)
This commit is contained in:
breadbyte 2024-06-22 06:41:13 +08:00 committed by GitHub
parent 8756ff5b3c
commit 08551097c6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 148 additions and 24 deletions

View file

@ -1,7 +1,6 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@ -5782,6 +5781,15 @@ namespace MinecraftClient {
}
}
/// <summary>
/// Looks up a localized string similar to MCC uses Sentry to log errors. You can opt-out by setting the EnableSentry option in the configuration file to false..
/// </summary>
internal static string mcc_sentry_logging {
get {
return ResourceManager.GetString("mcc.sentry_logging", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Server is in offline mode..
/// </summary>

View file

@ -2130,4 +2130,7 @@ Logging in...</value>
<data name="mcc.select_profile" xml:space="preserve">
<value>Select a profile from available profiles:</value>
</data>
<data name="mcc.sentry_logging" xml:space="preserve">
<value>MCC uses Sentry to log errors. You can opt-out by setting the EnableSentry option in the configuration file to false.</value>
</data>
</root>