Skip to content

Add "Data Collected" page for Godot SDK (and more) #13533

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
May 1, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions docs/platforms/godot/configuration/options.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,12 @@ If enabled, the SDK will attach the Godot log file to the event.

</ConfigKey>

<ConfigKey name="attach-screenshot">

If enabled, the SDK will try to take a screenshot and attach it to the event.

</ConfigKey>

## Error Logger Options

<ConfigKey name="logger-enabled">
Expand Down
42 changes: 42 additions & 0 deletions docs/platforms/godot/data-management/data-collected.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
title: Data Collected
description: "See what data is collected by the Sentry SDK."
sidebar_order: 1
---

Sentry takes data privacy very seriously and has default settings in place that prioritize data safety, especially when it comes to personally identifiable information (PII) data. When you add the Sentry SDK to your application, you allow it to collect data and send it to Sentry during the runtime of your application.

The category types and amount of data collected vary, depending on the integrations you've enabled in the Sentry SDK. Here's a list of data categories the Sentry Native SDK collects:

## User Information

By default, the Sentry SDK doesn't send any information about users, such as email address, user ID, or username. However, if the <PlatformLink to="/configuration/options/#send-default-pii">`send_default_pii` option</PlatformLink> is enabled, Sentry backend services will infer the user's IP address based on the incoming request.

You can also set user information from code:

```GDScript
var user := SentryUser.new()
user.id = "custom_id"
user.email = "[email protected]"
user.username = "bob"
user.ip_address = "127.0.0.1"
SentrySDK.set_user(user)
```

## Device Information

The Sentry SDK collects information about the device, such as the name, version and build of your operating system or Linux distribution. This information is sent to Sentry by default.

## Screenshots

The <PlatformLink to="/enriching-events/screenshots">screenshot feature</PlatformLink> is disabled by default. If you choose to enable this feature in options, any screenshots captured may contain sensitive data visible in the application at the time of the error.

## Godot Log File

By default, the Sentry SDK automatically attaches the Godot log file to events it sends. Since this log file contains all messages printed in your code and by the engine itself, it may inadvertently include sensitive information. To enhance privacy protection, you can disable the <PlatformLink to="/configuration/options/#attach-log">`attach_log` option</PlatformLink> in the Godot Project Settings.

## Thread Stack Information

At the time of a crash, the stack of each thread is collected and sent to Sentry as part of the Minidump snapshot for `crashpad` backend. This information is sent to Sentry by default, but dropped after processing the event in the backend.

These files are not stored by default, but you can <PlatformLink to="/data-management/store-minidumps-as-attachments/">enable Minidump Storage</PlatformLink> in the Sentry organization or project settings.
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
title: "Store Minidumps As Attachments"
description: "Learn how to enable storing minidumps as attachments in issue details."
sidebar_order: 90
---


<Include name="store-minidumps-as-attachments-intro" />
<Include name="store-minidumps-as-attachments-configuration" />
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
33 changes: 33 additions & 0 deletions docs/platforms/godot/enriching-events/screenshots/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
title: "Screenshots"
description: "Learn more about taking screenshots when an error occurs. Sentry pairs the screenshot with the original event, giving you additional insight into issues."
---

Sentry makes it possible to automatically take a screenshot and include it as an attachment when a user experiences an error, an exception or a crash.

This feature is only available for SDKs with a user interface, like the ones for mobile and desktop applications. It's also limited by whether taking a screenshot is possible or not. For example, in some environments, like native iOS, taking a screenshot requires the UI thread, which often isn't available in the event of a crash. Another example where a screenshot might not be available is when the event happens before the screen starts to load. So inherently, this feature is a best effort solution.

## Enabling Screenshots

Because screenshots may contain <PlatformLink to="/data-management/sensitive-data/">PII</PlatformLink>, they are an opt-in feature. To attach screenshots to your events, navigate to **Project Settings > Sentry > Options** and enable the **Attach Screenshot** option:

![Enabling Screenshots in Project Settings](./img/project-settings.png)

Or, like so, if you're <PlatformLink to="/configuration/options/">configuring things programatically</PlatformLink>:

```GDScript
extends SentryConfiguration

func _configure(options: SentryOptions):
options.attach_screenshot = true
```

## Viewing Screenshots

If one is available, you'll see a thumbnail of the screenshot when you click on a specific issue from the [**Issues**](https://demo.sentry.io/issues/) page.

![Screenshot Thumbnail](./img/screenshot-thumbnail.png)

You can see an overview of all the screenshots for the issue as well as associated events by pressing the "View All" button.

![Screenshots List Example](./img/screenshot-list-example.png)