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

@ -506,6 +506,9 @@ namespace MinecraftClient
[TomlDoNotInlineObject]
public class AdvancedConfig
{
[TomlInlineComment("$Main.Advanced.enable_sentry$")]
public bool EnableSentry = true;
[TomlInlineComment("$Main.Advanced.language$")]
public string Language = "en_us";