Skip to content

feat(javascript): Add "Data Collected" #13527

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 7 commits into from
Apr 30, 2025
Merged

feat(javascript): Add "Data Collected" #13527

merged 7 commits into from
Apr 30, 2025

Conversation

s1gr1d
Copy link
Member

@s1gr1d s1gr1d commented Apr 28, 2025

DESCRIBE YOUR PR

Adds a "Data Collected" page to JavaScript-based SDKs

Preview: https://sentry-docs-k1k33l012.sentry.dev/platforms/javascript/data-management/data-collected/

closes #13407

IS YOUR CHANGE URGENT?

Help us prioritize incoming PRs by letting us know when the change needs to go live.

  • Urgent deadline (GA date, etc.):
  • Other deadline:
  • None: Not urgent, can wait up to 1 week+

SLA

  • Teamwork makes the dream work, so please add a reviewer to your PRs.
  • Please give the docs team up to 1 week to review your PR unless you've added an urgent due date to it.
    Thanks in advance for your help!

PRE-MERGE CHECKLIST

Make sure you've checked the following before merging your changes:

  • Checked Vercel preview for correctness, including links
  • PR was reviewed and approved by any necessary SMEs (subject matter experts)
  • PR was reviewed and approved by a member of the Sentry docs team

Copy link

vercel bot commented Apr 28, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
sentry-docs ✅ Ready (Inspect) Visit Preview 💬 Add feedback Apr 30, 2025 10:56am
2 Skipped Deployments
Name Status Preview Comments Updated (UTC)
changelog ⬜️ Ignored (Inspect) Visit Preview Apr 30, 2025 10:56am
develop-docs ⬜️ Ignored (Inspect) Visit Preview Apr 30, 2025 10:56am

Copy link

codecov bot commented Apr 28, 2025

Bundle Report

Changes will increase total bundle size by 249 bytes (0.0%) ⬆️. This is within the configured threshold ✅

Detailed changes
Bundle name Size Change
sentry-docs-server-cjs 11.14MB 255 bytes (0.0%) ⬆️
sentry-docs-client-array-push 9.47MB -6 bytes (-0.0%) ⬇️

Affected Assets, Files, and Routes:

view changes for bundle: sentry-docs-client-array-push

Assets Changed:

Asset Name Size Change Total Size Change (%)
static/chunks/pages/_app-*.js -3 bytes 868.7kB -0.0%
static/chunks/8165-*.js -3 bytes 410.1kB -0.0%
server/middleware-*.js -5.55kB 1.0kB -84.74%
server/middleware-*.js 5.55kB 6.55kB 555.3% ⚠️
static/Nam-*.js (New) 77 bytes 77 bytes 100.0% 🚀
static/Nam-*.js (New) 578 bytes 578 bytes 100.0% 🚀
static/3XbmzHxbCCVy-*.js (Deleted) -578 bytes 0 bytes -100.0% 🗑️
static/3XbmzHxbCCVy-*.js (Deleted) -77 bytes 0 bytes -100.0% 🗑️
view changes for bundle: sentry-docs-server-cjs

Assets Changed:

Asset Name Size Change Total Size Change (%)
1729.js -3 bytes 1.75MB -0.0%
../instrumentation.js -3 bytes 1.08MB -0.0%
9523.js -3 bytes 1.05MB -0.0%
../app/[[...path]]/page.js.nft.json 88 bytes 388.52kB 0.02%
../app/platform-redirect/page.js.nft.json 88 bytes 388.43kB 0.02%
../app/sitemap.xml/route.js.nft.json 88 bytes 386.4kB 0.02%

Copy link
Collaborator

@timfish timfish left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the Electron SDK is going to require its own page for this so I think this can be merged and that can come in another PR...

Copy link
Member

@Lms24 Lms24 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This great, thanks for taking the time to collect all of this information. I had a couple of questions and suggestions but I think this is already in a good place :)


## HTTP Headers

By default, the Sentry SDK doesn't send any HTTP response or request headers.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this isn't entirely true, right? IIRC from your PR, it's true for browser but in Node we always send headers? If so, let's maybe only show this for browser JS?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah this is currently not true but I was already writing the optimistic version of the docs for after my PR is merged :D

But since we don't filter sending the HTTP headers I'll rewrite this


## Information About Logged-in User

By default, the Sentry SDK doesn't send any information about the logged-in user, such as email address, user ID, or username. Even if enabled, the type of logged-in user information you'll be able to send depends on the integrations you enable in Sentry's SDK. Most integrations won't send any user information. Some will only set the user ID, but there are a few (e.g. <PlatformLink to="/user-feedback/">User Feedback</PlatformLink>) that will set the user ID, username, and email address.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

even if enabled

if what is enabled -- sendDefaultPii?

Some will only set the user ID

I'm curious myself now, which ones? 😅

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's bad wording 🙈
It basically depends on what the user provides in the object. I'm going to re-write this all 😅


By default, the Sentry SDK doesn't send any information about the logged-in user, such as email address, user ID, or username. Even if enabled, the type of logged-in user information you'll be able to send depends on the integrations you enable in Sentry's SDK. Most integrations won't send any user information. Some will only set the user ID, but there are a few (e.g. <PlatformLink to="/user-feedback/">User Feedback</PlatformLink>) that will set the user ID, username, and email address.

To start sending logged-in user information, set <PlatformLink to="/configuration/options/#sendDefaultPii">`sendDefaultPii: true`</PlatformLink> in your `Sentry.init({})` config.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm maybe I'm missing something but wouldn't I have to use setUser to actually set user data? Other than that, there's IP inferral and stuff but this is explained in the section below

Comment on lines 43 to 46
## Request Query String

The full request query string of outgoing and incoming HTTP requests is **always sent to Sentry**. Depending on your application, this could contain PII data.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

two things:

l: let's add an example for a query param (and maybe also fragment?), just so that everyone understands what we're referring to

m: AFAIK we apply server-side PII scrubbing to the URL query and fragment fields. This doesn't change the fact that we send the data but maybe it's worth mentioning? I guess we do this on a lot of fields mentioned on this page in general, so instead of mentioning it here specifically, we could write a short section about it and link to the docs.


The full request query string of outgoing and incoming HTTP requests is **always sent to Sentry**. Depending on your application, this could contain PII data.

## Request Body
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this apply to all requests we collect (everywhere)?

I'd specifically mention if this applies to incoming or outgoing requests because I think there's different behaviour, right?


By default, the Sentry SDK will not send local variables in the error stack trace in client-side JavaScript SDKs.

<PlatformSection notSupported={["javascript", "javascript.angular", "javascript.ember", "javascript.react", "javascript.solid", "javascript.svelte", "javascript.vue"]}>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

l: I think you can use PlatformCategorySection to disable client-side SDKs here

Copy link
Member

@chargome chargome left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice summary!

@s1gr1d s1gr1d requested a review from lucas-zimerman April 30, 2025 09:59
@s1gr1d s1gr1d merged commit 0144eed into master Apr 30, 2025
11 checks passed
@s1gr1d s1gr1d deleted the sig/js-data-collected branch April 30, 2025 14:57
codyde added a commit that referenced this pull request May 1, 2025
* 'master' of https://github.com/getsentry/sentry-docs:
  Add "Data Collected" page for Godot SDK (and more) (#13533)
  Clarify FK docs (#13562)
  Clarify db index docs (#13561)
  Remove non-functioning video embed (#13557)
  Masinette integrations elba (#13503)
  Incorporate Uptime Monitors Into The Crons Management Page (#13507)
  feat(javascript): Add "Data Collected" (#13527)
  docs(relay): remove entries that are not scrubbed by default (#13555)
  flutter: Add note to app start integration (#13479)
  ref(flutter): move custom zone handling code snippet from init to troubleshooting (#13478)
  docs(python): add uv option to python install instructions (#13510)
  add docs for supabase integration (#13545)
  feat(native): add view hierarchy to develop docs (#13544)
  feat(autofix): Update autofix images (#13540)
  Ad alerts and dashboard page to new quickstart guide (#13522)
  Add data enrichment page to new onboarding guide (#13508)
  Add first onboarding guide to docs (#13462)
  (feat) Sentry MCP Documentation  (#13524)
  feat(Capacitor): Migration guides for version 2 (#13022)
  docs(js): move API-related content from Manual Setup to APIs page (#13327)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Document "Data Collected" for JS SDKs
4 participants