Skip to content

Commit 36a901c

Browse files
committed
* 'master' of https://github.com/getsentry/sentry-docs: (72 commits) docs(replay): Bring replay nav item to all apple platforms (#14710) User Feedback Basics Page (#14670) Update AM3 and legacy billing for logs GA, DO NOT MERGE BEFORE LOGS GA (#14589) Add LLMSteering component for hidden documentation instructions (#14744) New data retention policy page (#14661) Adding error prediction to Prevent AI docs (#14641) feat(logs): Remove beta note from logs docs (#14686) First pass at logs quota doc (#14671) docs(aws): Remove manual setup steps for ESM (#14738) Android Logs docs without Errors / Breadcrumbs distractions (#14733) chore(Unity): Dropped 2019 relevant section from Known Limitations (#14735) feat: Added Unity `UserFeedback` Prefab (#14667) chore(Unity): Added Mono & Line Numbers to Known Limitations (#14736) docs(js): Fix Next.js client tracing config (#14734) chore: Updated known limitation in Unity with Cysharp (#14666) feat(Unity ): Added `APK+OBB` initialization to troubleshooting (#14668) Codecov copy & screenshot edits (#14659) fix(cloudflare): Remove unused instrument.mjs from hono on cloudflare (#14723) update advanced scrubbing doc - adding logs section (#14696) fixing some errors from nextjs-source-map-updates branch (#14467) ...
2 parents 3fa6aa0 + 7ffc130 commit 36a901c

File tree

188 files changed

+3707
-833
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

188 files changed

+3707
-833
lines changed

develop-docs/development-infrastructure/python-dependencies.mdx

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,23 +14,24 @@ data if they turn out to be malicious.
1414

1515
Any new dependency needs to be thoroughly reviewed and approved by [owners-python-build](https://github.com/orgs/getsentry/teams/owners-python-build/members). This group is already automatically tagged in your PR to `sentry` or `getsentry` as soon as you edit relevant files. For other repos you might need to do it manually.
1616

17-
To add or manually update a dependency:
17+
To add or update a dependency:
1818

1919
1. Clone https://github.com/getsentry/pypi/.
2020
2. `cd` into your clone and run `python3 -m add_pkg PKGNAME` (or `python3 -m add_pkg PKGNAME==PKGVERSION` if you want a version other than the latest).
2121
3. Commit the resulting changes to a branch, open a PR in `getsentry/pypi`, and tag someone on your team (any engineer can approve PRs on this repo).
2222
4. Once your PR is merged, go back to the main repo whose dependencies you want to change (`sentry`, `getsentry`, etc.).
23-
5. In that repo, add to or update `requirements-base.txt` or `requirements-dev.txt`, as appropriate. Note that many of our dependencies are pinned with lower bounds only, to encourage updating to latest versions, though we do use exact pins for certain core dependencies like `django`. Choose whichever one feels most appropriate in your case.
24-
6. Run `make freeze-requirements`. You might need to wait a few minutes for the changes to `getsentry/pypi` to be deployed before this will work without erroring.
23+
5. In that repo, add to or update the dependency in `pyproject.toml`.
24+
- In sentry, you can do this with the [bump-version action](https://github.com/getsentry/sentry/actions/workflows/bump-version.yml).
25+
- Click the **Run workflow** dropdown.
26+
- Fill in your package name and version.
27+
- Click the **Run workflow** button.
28+
- Some projects are still using `requirements*.txt`, in which case update those files.
29+
- The eventual goal is that every python project will [use `uv` to lock python dependencies](https://www.notion.so/Standard-Spec-python-uv-2248b10e4b5d8045b8fff30f8b8b67ca).
30+
- Note that dependencies should pinned with lower bounds only, to encourage updating to latest versions.
31+
6. Run `make freeze-requirements` (or `uv lock`). You might need to wait a few minutes for the changes to `getsentry/pypi` to be deployed before this will work without erroring.
2532
7. Commit your changes (which should consist of changes to both one of the `requirements` files and its corresponding lockfile) to a branch and open a PR in the relevant repo. If it's not obvious, explain why you're adding or updating the dependency. Tag `owners-python-build` if they haven't already been auto-tagged.
2633
8. Merge your PR, pull `master`, and run `devenv sync`.
2734

28-
To update a dependency using GitHub Actions:
29-
30-
1. Go to https://github.com/getsentry/sentry/actions/workflows/bump-version.yml.
31-
2. Click the **Run workflow** dropdown.
32-
3. Fill in your package name and version.
33-
4. Click the **Run workflow** button.
3435

3536
## Depending on forks
3637

develop-docs/sdk/telemetry/spans/filtering.mdx

Lines changed: 59 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,74 @@ Any APIs exposed to the user to filter spans MUST adhere to the following design
1919

2020
## Filter with `ignoreSpans`
2121

22-
The `ignoreSpans` option accepts a glob pattern or string.
22+
The `ignoreSpans` option MUST accept a string, RegExp or glob pattern (whichever of the two the platform supports). These values MUST be matched against the span name.
23+
24+
Furthermore, `ignoreSpans` SHOULD accept an Object with patterns matching the span name, or span attributes (see type definitions below).
25+
26+
```ts
27+
type IgnoreSpanNamePattern = string | RegExp | GlobPattern;
28+
29+
// all allowed values for span attributes (unlikely but could differ by platform)
30+
type AttributeValueTypes = string | boolean | number | Array<string> | Array<boolean> | Array<number>;
31+
type EnhancedAttributeValueTypes = AttributeValueTypes | RegExp | GlobPattern;
32+
33+
type IgnoreSpanFilter = {
34+
name: IgnoreSpanNamePattern;
35+
attributes?: Record<string, EnhancedAttributeValueTypes>;
36+
} | {
37+
name?: IgnoreSpanNamePattern;
38+
attributes?: Record<string, EnhancedAttributeValueTypes>;
39+
}
40+
41+
type IgnoreSpans = Array<IgnoreSpanNamePattern | IgnoreSpanFilter>
42+
```
43+
(Note: `GlobPattern` is used as an illustrative type for platforms that support matching glob patterns. It is not a valid TypeScript type.)
44+
45+
Example:
2346
2447
```js
2548
Sentry.init({
2649
ignoreSpans: [
50+
// apply on span name
2751
'GET /about',
2852
'events.signal *',
53+
/api\/\d+/,
54+
// ignore health check GET requests with 200 status code
55+
{
56+
name: /healthz?/,
57+
attributes: {
58+
'http.method': 'GET',
59+
'http.status_code': 200,
60+
}
61+
},
62+
// ignore all GET requests to /api/ with 200 status code
63+
// (i.e. span name doesn't matter)
64+
{
65+
attributes: {
66+
'http.method': /GET \/api\/.*/,
67+
'http.status_code': 200,
68+
}
69+
},
70+
// ignore all spans with name starting with /imprint-
71+
// if glob patterns are supported
72+
{
73+
name: '/imprint-*'
74+
}
2975
]
3076
})
3177
```
78+
(Note: The glob patterns used in the example serve an illustrative purpose. They are not supported in JavaScript.)
79+
80+
### Implementation Requirements
81+
82+
1. The `ignoreSpans` patterns MUST be applied to all spans, including the root or segment span.
83+
- If a pattern matches the root span, the span and all its children MUST be ignored.
84+
- If a pattern matches a child span, the span MUST be ignored but any potential child spans MUST be attempted to be reparented to the parent span of the ignored span.
85+
86+
2. If SDKs accept `IgnoreSpanFilter` objects, attributes MUST be matched by value. This also applies to attributes with array values.
87+
- String attribute values are matched in the same fashion as span names: If a string is provided, the string MUST match (contains), if a `RegExp` or glob pattern is provided, the value MUST match the pattern.
88+
- Any other attribute value type MUST strictly equal the provided value.
89+
3290
3391
## Filter with `integrations`
3492

develop-docs/sdk/telemetry/traces/distributed-tracing/index.mdx

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ This document describes how an SDK should propagate information between differen
66

77
For an overview see [Distributed Tracing](https://docs.sentry.io/product/performance/distributed-tracing/) in the product docs.
88

9-
Sentry uses two containers to hold trace information [`sentry-trace`](/sdk/performance/#header-sentry-trace) and [`baggage`](/sdk/performance/dynamic-sampling-context/#baggage-header).
9+
Sentry uses three containers to hold trace information [`sentry-trace`](/sdk/performance/#header-sentry-trace), [`baggage`](/sdk/performance/dynamic-sampling-context/#baggage-header) and optionally [`traceparent`](/sdk/performance/distributed-tracing/#w3c-trace-context-header).
1010

1111
With these containers you can propagate a trace to a down-stream service by either:
1212
- adding `sentry-trace` and `baggage` HTTP headers (when making outgoing HTTP requests),
@@ -19,3 +19,11 @@ The SDK running in the receiving service needs to make sure to pick up incoming
1919
- reading the environment variables `SENTRY_TRACE` and `SENTRY_BAGGAGE` on startup.
2020

2121
This trace information should be stored in the "propagation context" of the current scope. This makes sure that all telemetry that is emitted from the receiving service to Sentry will include the correct trace information.
22+
23+
## W3C Trace Context Header
24+
25+
To interoperate with OpenTelemetry (OTel) services, SDKs can optionally send the W3C Trace Context `traceparent` HTTP header on outgoing requests in addition to Sentry’s own `sentry-trace` and `baggage`. This enables traces originating from a Sentry SDK to be continued by components that only use OTel/W3C propagation.
26+
27+
The `traceparent` header must only be sent when [`propagateTraceparent`](/sdk/telemetry/traces/#propagatetraceparent) is `true` and the request matches `tracePropagationTargets` (same condition as for `sentry-trace`/`baggage`).
28+
29+
The full spec is available in the [W3C Trace Context](https://www.w3.org/TR/trace-context/) document.

develop-docs/sdk/telemetry/traces/index.mdx

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,19 @@ The `maxSpans` should be implemented as an internal, non-configurable, constant
115115

116116
The `maxSpans` limit may also help avoiding transactions that never finish (in platforms that keep a transaction open for as long as spans are open), preventing OOM errors, and generally avoiding degraded application performance.
117117

118+
119+
### `propagateTraceparent`
120+
121+
This must be a boolean value. The default is `false`. This option is used to enable the propagation of the W3C Trace Context HTTP header `traceparent` on outgoing HTTP requests. This is useful when the receiving services only support OTel/W3C propagation.
122+
123+
The `traceparent` header is only sent when `propagateTraceparent` is `true` and the request matches `tracePropagationTargets` (same condition as for `sentry-trace`/`baggage`).
124+
125+
Header Format:
126+
- Key: `traceparent`
127+
- Value: `00-<traceId>-<spanId>-<sampled>` where `<sampled>` is `01` if sampled, otherwise `00`.
128+
129+
The full spec is available in the [W3C Trace Context](https://www.w3.org/TR/trace-context/) specification.
130+
118131
## `Event` Changes
119132

120133
As of writing, transactions are implemented as an extension of the `Event`

develop-docs/self-hosted/index.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@ We require at least **Docker 19.03.6** and **Docker Compose 2.32.2**. It is reco
3131

3232
These are the minimum requirements:
3333
- 4 CPU Cores
34-
- 16 GB RAM
34+
- 16 GB RAM + 16 GB swap
3535
- 20 GB Free Disk Space
3636

37-
We also recommend using a swapfile whenever applicable.
37+
We recommend using 32 GB RAM, but it works with 16 GB RAM + 16 GB swap as well. You will not notice a downside if your 16 GB swap is on a high speed disk.
3838

3939
Depending on your traffic volume, you may want to increase your system specification to handle increased load. Although most of the times, this is not the case for self-hosted Sentry, since no matter how small or big the traffic is, you will most likely hover around the same used resources.
4040

docs/cli/metrics.mdx

Lines changed: 0 additions & 70 deletions
This file was deleted.

docs/organization/integrations/data-visualization/amazon-sqs/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: "Learn about Sentry's Amazon SQS integration, which allows you to f
55
---
66
<Alert>
77

8-
Amazon SQS integration is deprecated and is not availble to be installed on new projects.
8+
Amazon SQS integration is deprecated and is not available to be installed on new projects.
99

1010
</Alert>
1111
Amazon SQS is useful for a more in-depth analysis of exceptions, making it quick and easy to pipe exceptions back into your own systems. Or, use it to empower other teams, such as a Business Intelligence function.

docs/organization/integrations/data-visualization/segment/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: "Learn about Sentry's Segment integration, which allows you to coll
55
---
66
<Alert>
77

8-
Segment integration is deprecated and is not availble to be installed on new projects.
8+
Segment integration is deprecated and is not available to be installed on new projects.
99

1010
</Alert>
1111

docs/organization/integrations/data-visualization/splunk/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: "Learn more about Sentry's Splunk integration, which allows you to
55
---
66
<Alert>
77

8-
Splunk integration is deprecated and is not availble to be installed on new projects.
8+
Splunk integration is deprecated and is not available to be installed on new projects.
99

1010
</Alert>
1111

docs/organization/integrations/issue-tracking/asana/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: "Learn about Sentry's Asana integration and how you can create or l
55
---
66
<Alert>
77

8-
Asana integration is deprecated and is not availble to be installed on new projects.
8+
Asana integration is deprecated and is not available to be installed on new projects.
99

1010
</Alert>
1111
This integration needs to be set up in each project for which you wish to use it. It is maintained and supported by the [Sentry community](https://open.sentry.io/).

0 commit comments

Comments
 (0)