{{ message }}
feat(core): [Data Collection 21] Add external configuration - #6036
Draft
adinauer wants to merge 23 commits into
Draft
feat(core): [Data Collection 21] Add external configuration#6036adinauer wants to merge 23 commits into
adinauer wants to merge 23 commits into
Conversation
Parse the url.full fallback through the shared URL utility before using it as an HTTP span description. This removes query parameters and fragments while preserving route and target handling. Refs #5666 Co-Authored-By: Claude <noreply@anthropic.com>
…a-collection-opentelemetry-span-description
…a-collection-opentelemetry-span-description
Exclude query parameters and fragments when deriving Sentry span descriptions from the legacy http.target attribute. Leave the completed OpenTelemetry attribute unchanged. Refs #5666 Co-Authored-By: Claude <noreply@anthropic.com>
…a-collection-opentelemetry-span-description
…a-collection-opentelemetry-span-description
…a-collection-opentelemetry-span-description
Parse flattened Data Collection settings from properties, system properties, and environment variables. Merge only configured values so omitted settings retain their documented or legacy behavior. Refs #5666
Contributor
Contributor
|
📲 Install BuildsAndroid
|
This was referenced Sep 1, 2026
Align the flattened external configuration key with the Data Collection option name used by the specification and Android manifest configuration.\n\nRefs #5666\nCo-Authored-By: Claude <noreply@anthropic.com>
8 tasks
Contributor
Performance metrics 🚀
|
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 4825c14 | 308.10 ms | 366.35 ms | 58.24 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 4825c14 | 0 B | 0 B | 0 B |
Previous results on branch: feat/data-collection-external-options
Startup times
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| d3db9cd | 322.28 ms | 378.68 ms | 56.40 ms |
App size
…a-collection-opentelemetry-span-description
…o feat/data-collection-external-options
Merge the conflict-resolved cookie policy through the remaining stacked branches. Co-Authored-By: Claude <noreply@anthropic.com>
Merge the conflict-resolved cookie policy through the remaining stacked branches. Co-Authored-By: Claude <noreply@anthropic.com>
Merge the latest changes from the preceding Data Collection branch. Co-Authored-By: Claude <noreply@anthropic.com>
Merge the latest changes from the preceding Data Collection branch. Co-Authored-By: Claude <noreply@anthropic.com>
Merge the fallback behavior isolation fix from the preceding Data Collection branch. Co-Authored-By: Claude <noreply@anthropic.com>
Merge the fallback behavior isolation fix from the preceding Data Collection branch. Co-Authored-By: Claude <noreply@anthropic.com>
Merge the latest changes from the preceding Data Collection branch. Co-Authored-By: Claude <noreply@anthropic.com>
Merge the latest changes from the preceding Data Collection branch. Co-Authored-By: Claude <noreply@anthropic.com>
9 tasks
Propagate the corrected OkHttp Set-Cookie fixture through the Data Collection PR stack. Co-Authored-By: Claude <noreply@anthropic.com>
Propagate the corrected OkHttp Set-Cookie fixture through the Data Collection PR stack. Co-Authored-By: Claude <noreply@anthropic.com>
Revert the OpenTelemetry span-description normalization from this stack PR. Preserve completed OpenTelemetry URL and target values when deriving descriptions. Refs #5666 Co-Authored-By: Claude <noreply@anthropic.com>
Propagate the OpenTelemetry span-description revert from the preceding stack branch. Co-Authored-By: Claude <noreply@anthropic.com>
adinauer
changed the base branch from
fix/data-collection-opentelemetry-span-description
to
fix/data-collection-ktor-span-description
September 7, 2026 09:57
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

PR Stack (Data Collection)
📜 Description
Parse flattened Data Collection settings through
ExternalOptions, making them available fromsentry.properties, Java system properties, and environment variables.Support user information, HTTP body directions, cookies, request and response headers, URL query parameters, GraphQL document and variables, and database query data. Merge only configured fields into
SentryOptions; omitted fields retain their documented defaults or legacy behavior. An emptydata-collection.http-bodiesvalue disables all body directions.💡 Motivation and Context
Data Collection was previously configurable only through the programmatic
SentryOptionsAPI and framework-specific binding. JVM applications that rely on the SDK's external configuration need equivalent access without custom initialization code.Explicit external Data Collection configuration takes precedence over
sendDefaultPii, matching the programmatic resolver behavior.Refs #5666
💚 How did you test it?
./gradlew :sentry:test --tests 'io.sentry.ExternalOptionsTest' --tests 'io.sentry.SentryOptionsTest'./gradlew :sentry:check./gradlew spotlessApply apiDumpgit diff --check📝 Checklist
sendDefaultPIIis enabled.🔮 Next steps
Add Spring Boot binding coverage, Android manifest metadata support, and Data Collection configuration documentation in follow-up PRs.
#skip-changelog