Repository navigation
[do not merge] Testing merge - #7798
Merged
Merged
Conversation
The ASGI integration sets the parameterized path as the transaction name from the ASGI scope "route" property. Starlette started setting the property in new versions.
There is no import of `anyio` in `test_starlette.py` and the pin leads to unsatisfiable constraints. Closes #7778
Co-authored-by: Alexander Alderman Webb <alexander.webb@sentry.io>
…nd filters (#7795) Bunched these three together since it's a very small change in each Part 3 of https://linear.app/getsentry/issue/PY-2898/implement-user-agentoriginal
### Description Move `Boto3Integration` from single module into package with smaller internal modules. - botocore client patching is moved into `_client.py`. - request instrumentation and event handlers into `_instrumentation.py`. - existing public import is kept unchanged: `from sentry_sdk.integrations.boto3 import Boto3Integration`.
### Description Finish boto streaming spans when a `StreamingBody` is consumed, closed or fails. Previously, streaming spans where only finished when a read returned no data or `StreamingBody.close()` was called.
### Description Move boto3 span creation from individual HTTP request attempts to full botocore client-call lifecycle. Previously, the client span was created from the botocore `request-created` event; since botocore creates a new `AwsRequest` event for every retry, these spans represent individual retries rather than the full event. Following OTel ([https://opentelemetry.io/docs/specs/semconv/rpc/rpc-spans/#rpc-client-span](<https://opentelemetry.io/docs/specs/semconv/rpc/rpc-spans/#rpc-client-span>)) the span should cover the entire call lifecycle including all retries. Wrapping `_make_api_call()` covers all retries performed by botocore, including serialization, endpoint resolution, the final response or failures ([https://github.com/boto/botocore/blob/develop/botocore/client.py:999](<https://github.com/boto/botocore/blob/develop/botocore/client.py:999>)). * patch `BaseClient._make_api_call()` so one span represents a single boto operation; this span is also kept active across every retry attempt. * `request-created` is kept for breadcrumbs, HTTP request attributes, and trace propagation. * client spans that fail will preserve the original exception. * responses that return a `StreamingBody` are kept open until body is consumed or closed. * fix the correct parent/child relationship between boto, HTTP, and streaming spans.<br><br> #### Issues Resolves #7474
### Description Implements #7475 by adding common OTel attributes to boto client spans. ### Changes - add the following attributes: `rpc.system.name`, `rpc.service`, `rpc.method`, `cloud.region`, `server.address`, `server.port`. - set `rpc.system.name` to `aws-api` - changing span name to `Service.Operation` (now it's `aws.<service>.<Operation>`), e.g. `S3.HeadObject` following OTel is a breaking change and will be done in major. - use modeled AWS service for `rpc.service`; not supported anymore by OTel, but JS keeps this too. - use boto operation name for `rpc.method`. - extend `AwsCallContext` to carry extra client metadata for instrumentation. #### Issues Resolves #7475
### Description Add generic response, retry, and error attribute enrichment to boto3 spans. Previously, only recorded request and client metadata was instrumented; information after the call such as HTTP status, retry count, etc was omitted. The new attributes follow the [OTel AWS SDK conventions](https://opentelemetry.io/docs/specs/semconv/cloud-providers/aws-sdk/). ### Changes - add `SPANDATA` consts: `AWS_REQUEST_ID`, `AWS_EXTENDED_REQUEST_ID`, `HTTP_REQUEST_RESEND_COUNT`, and `ERROR_TYPE`. - add `_get_response_attributes()` to extract `http.response_status_code`, `http.request_resend_count`, `aws.request_id`, and `aws.extended_request_id`. - Add `erorr.type` from `ClientError.Eror.Code` or the exception class, without recording error messages. #### Issues Resolves #7476
sentrivana
force-pushed
the
ivana/major/test-merge-7
branch
2 times, most recently
from
October 1, 2026 08:41
160cdf4 to
06d4e14
Compare
Contributor
Codecov Results 📊✅ 58919 passed | ⏭️ 2727 skipped | Total: 61646 | Pass Rate: 95.58% | Execution Time: 163m 37s 📊 Comparison with Base Branch
➖ Removed Tests (1)View removed tests
All tests are passing successfully. ✅ Patch coverage is 93.97%. Project has 2074 uncovered lines. Files with missing lines (5)
Coverage diff@@ Coverage Diff @@
## master #PR +/-##
==========================================
- Coverage 90.34% 90.17% -0.17%
==========================================
Files 199 183 -16
Lines 26524 21101 -5423
Branches 9864 7400 -2464
==========================================
+ Hits 23962 19027 -4935
- Misses 2562 2074 -488
- Partials 1495 1230 -265Generated by Codecov Action |
sentrivana
force-pushed
the
ivana/major/test-merge-7
branch
3 times, most recently
from
October 1, 2026 09:40
bf9a487 to
d4792ef
Compare
sentrivana
force-pushed
the
ivana/major/test-merge-7
branch
from
October 1, 2026 09:46
d4792ef to
07db984
Compare
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.
No description provided.