GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — feat(boto3): Add common OTel AWS client attributes by pabloDeputter · Pull Request #7481 · getsentry/sentry-python

Conversation

@pabloDeputter

@pabloDeputter pabloDeputter commented Sep 11, 2026 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor

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

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@github-actions

github-actions Bot commented Sep 11, 2026 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor

Codecov Results 📊

✅ 132565 passed | ⏭️ 7220 skipped | Total: 139785 | Pass Rate: 94.83% | Execution Time: 446m 31s

📊 Comparison with Base Branch

Metric Change
Total Tests 📈 +3201
Passed Tests 📈 +3238
Failed Tests 📉 -60
Skipped Tests 📈 +23

➖ Removed Tests (60)

View removed tests
  • test_input_attributes_nonstreaming_chat[False-True-False-messages1-expected_system_instructions1-expected_input_messages1]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat[False-True-False-messages2-expected_system_instructions2-expected_input_messages2]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat[False-True-False-messages3-expected_system_instructions3-expected_input_messages3]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat[False-False-True-messages0-expected_system_instructions0-expected_input_messages0]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat[False-False-True-messages1-expected_system_instructions1-expected_input_messages1]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat[False-False-True-messages2-expected_system_instructions2-expected_input_messages2]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat[False-False-True-messages3-expected_system_instructions3-expected_input_messages3]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat[False-False-False-messages0-expected_system_instructions0-expected_input_messages0]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat[False-False-False-messages1-expected_system_instructions1-expected_input_messages1]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat[False-False-False-messages2-expected_system_instructions2-expected_input_messages2]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat[False-False-False-messages3-expected_system_instructions3-expected_input_messages3]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-True-True-messages0-expected_system_instructions0-expected_input_messages0]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-True-True-messages1-expected_system_instructions1-expected_input_messages1]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-True-True-messages2-expected_system_instructions2-expected_input_messages2]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-True-True-messages3-expected_system_instructions3-expected_input_messages3]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-True-False-messages0-expected_system_instructions0-expected_input_messages0]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-True-False-messages1-expected_system_instructions1-expected_input_messages1]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-True-False-messages2-expected_system_instructions2-expected_input_messages2]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-True-False-messages3-expected_system_instructions3-expected_input_messages3]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-False-True-messages0-expected_system_instructions0-expected_input_messages0]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-False-True-messages1-expected_system_instructions1-expected_input_messages1]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-False-True-messages2-expected_system_instructions2-expected_input_messages2]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-False-True-messages3-expected_system_instructions3-expected_input_messages3]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-False-False-messages0-expected_system_instructions0-expected_input_messages0]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-False-False-messages1-expected_system_instructions1-expected_input_messages1]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-False-False-messages2-expected_system_instructions2-expected_input_messages2]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[True-False-False-messages3-expected_system_instructions3-expected_input_messages3]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-True-True-messages0-expected_system_instructions0-expected_input_messages0]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-True-True-messages1-expected_system_instructions1-expected_input_messages1]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-True-True-messages2-expected_system_instructions2-expected_input_messages2]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-True-True-messages3-expected_system_instructions3-expected_input_messages3]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-True-False-messages0-expected_system_instructions0-expected_input_messages0]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-True-False-messages1-expected_system_instructions1-expected_input_messages1]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-True-False-messages2-expected_system_instructions2-expected_input_messages2]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-True-False-messages3-expected_system_instructions3-expected_input_messages3]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-False-True-messages0-expected_system_instructions0-expected_input_messages0]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-False-True-messages1-expected_system_instructions1-expected_input_messages1]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-False-True-messages2-expected_system_instructions2-expected_input_messages2]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-False-True-messages3-expected_system_instructions3-expected_input_messages3]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-False-False-messages0-expected_system_instructions0-expected_input_messages0]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-False-False-messages1-expected_system_instructions1-expected_input_messages1]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-False-False-messages2-expected_system_instructions2-expected_input_messages2]
    • File: tests.integrations.mistral.test_mistral
  • test_input_attributes_nonstreaming_chat_async[False-False-False-messages3-expected_system_instructions3-expected_input_messages3]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat[True-True-True]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat[True-True-False]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat[True-False-True]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat[True-False-False]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat[False-True-True]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat[False-True-False]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat[False-False-True]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat[False-False-False]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat_async[True-True-True]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat_async[True-True-False]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat_async[True-False-True]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat_async[True-False-False]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat_async[False-True-True]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat_async[False-True-False]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat_async[False-False-True]
    • File: tests.integrations.mistral.test_mistral
  • test_output_attributes_nonstreaming_chat_async[False-False-False]
    • File: tests.integrations.mistral.test_mistral
  • test_cache_spans_templatetag[True]
    • File: tests.integrations.django.test_cache_module

All tests are passing successfully.

✅ Patch coverage is 92.98%. Project has 2561 uncovered lines.
✅ Project coverage is 90.32%. Comparing base (2647da1) to head (6868ffd).

Files with missing lines (2)
File Patch % Lines
sentry_sdk/integrations/boto3/_instrumentation.py 89.19% ⚠️ 4 Missing and 3 partials
sentry_sdk/integrations/boto3/_context.py 100.00% ⚠️ 1 partials
Coverage diff
@@            Coverage Diff             @@
##        master       #PR       +/-##
==========================================
+ Coverage    90.30%    90.32%    +0.02%
==========================================
  Files          195       199        +4
  Lines        26261     26469      +208
  Branches      9798      9846       +48
==========================================
+ Hits         23714     23908      +194
- Misses        2547      2561       +14
- Partials      1485      1493        +8

Generated by Codecov Action

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@pabloDeputter pabloDeputter changed the title feat(boto3): improve boto3 integration feat(boto3): trace logical AWS calls with common attributes Sep 11, 2026
sentry-warden[bot]
sentry-warden Bot reviewed Sep 11, 2026
View reviewed changes
Comment thread sentry_sdk/integrations/boto3/_instrumentation.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread sentry_sdk/integrations/boto3/_instrumentation.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

sentry-warden[bot]
sentry-warden Bot reviewed Sep 11, 2026
View reviewed changes
Comment thread sentry_sdk/consts.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

@pabloDeputter
pabloDeputter marked this pull request as ready for review September 14, 2026 09:26
@pabloDeputter
pabloDeputter requested a review from a team as a code owner September 14, 2026 09:26
cursor[bot]
cursor Bot reviewed Sep 14, 2026
View reviewed changes

@cursor cursor Bot left a comment •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

Stale Bugbot comment from a previous run.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
Comment thread sentry_sdk/integrations/boto3/_instrumentation.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

alexander-alderman-webb
alexander-alderman-webb reviewed Sep 14, 2026
View reviewed changes
Comment thread tests/integrations/boto3/test_s3.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

sentry-warden[bot]
sentry-warden Bot reviewed Sep 14, 2026
View reviewed changes
Comment thread sentry_sdk/integrations/boto3/_instrumentation.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

sentry-warden[bot]
sentry-warden Bot reviewed Sep 14, 2026
View reviewed changes
Comment thread tests/integrations/boto3/test_client.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

@pabloDeputter
pabloDeputter added this pull request to stack #7500 September 14, 2026 12:53
sentry-warden[bot]
sentry-warden Bot reviewed Sep 14, 2026
View reviewed changes
Comment thread sentry_sdk/integrations/boto3/_client.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread sentry_sdk/integrations/boto3/_instrumentation.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

alexander-alderman-webb
alexander-alderman-webb reviewed Sep 14, 2026
View reviewed changes
Comment thread sentry_sdk/integrations/boto3/__init__.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

alexander-alderman-webb
alexander-alderman-webb reviewed Sep 14, 2026
View reviewed changes
Comment thread sentry_sdk/integrations/boto3/_client.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

alexander-alderman-webb
alexander-alderman-webb reviewed Sep 14, 2026
View reviewed changes
Comment thread sentry_sdk/integrations/boto3/_instrumentation.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

alexander-alderman-webb
alexander-alderman-webb reviewed Sep 14, 2026
View reviewed changes
Comment thread sentry_sdk/integrations/boto3/_client.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

@pabloDeputter
pabloDeputter force-pushed the pablo/improve-boto3-call-lifecycle branch from 9fe9acf to 4e8f427 Compare September 14, 2026 14:42
sentry-warden[bot]
sentry-warden Bot reviewed Sep 14, 2026
View reviewed changes
Comment thread tests/integrations/boto3/test_client.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

sentry-warden[bot]
sentry-warden Bot reviewed Sep 15, 2026
View reviewed changes
Comment thread sentry_sdk/integrations/boto3/__init__.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

sentry-warden[bot]
sentry-warden Bot reviewed Sep 15, 2026
View reviewed changes
Comment thread sentry_sdk/integrations/boto3/_client.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

cursor[bot]
cursor Bot reviewed Sep 15, 2026
View reviewed changes

@cursor cursor Bot left a comment •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

Stale Bugbot comment from a previous run.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
Comment thread sentry_sdk/integrations/boto3/_client.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

alexander-alderman-webb
alexander-alderman-webb reviewed Sep 15, 2026
View reviewed changes
Comment thread sentry_sdk/integrations/boto3/_client.py Outdated
except BaseException as exc:
if span is not None:
with capture_internal_exceptions():
_finish_active_http_child_span(span)

@alexander-alderman-webb alexander-alderman-webb Sep 15, 2026

Copy link
Copy Markdown
Collaborator

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

Why are we ending the stdlib span here?

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions

@pabloDeputter pabloDeputter Sep 15, 2026

Copy link
Copy Markdown
Contributor Author

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

We finish the HTTP span before the parent boto3 span so that the correct order is preserved. Otherwise the HTTP span would be kept active until the whole response is read, while the parent boto3 span finishes first; afterwards when the HTTP span finishes, it will restore the already-finished parent as current, causing subsequent calls to be parented incorrectly.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions

@pabloDeputter pabloDeputter Sep 15, 2026

Copy link
Copy Markdown
Contributor Author

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

I can send a screenshot from sentry maybe to show against latest release

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions

@pabloDeputter pabloDeputter Sep 15, 2026

Copy link
Copy Markdown
Contributor Author

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

old:
Screenshot 2026-09-15 at 14 18 55
new:
Screenshot 2026-09-15 at 14 18 46

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@pabloDeputter
pabloDeputter force-pushed the pablo/improve-boto3-call-lifecycle branch from aa1d65a to 939a3f8 Compare September 15, 2026 12:58
cursor[bot]
cursor Bot reviewed Sep 15, 2026
View reviewed changes

@cursor cursor Bot left a comment •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

Stale Bugbot comment from a previous run.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
Comment thread sentry_sdk/integrations/boto3/__init__.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

cursor[bot]
cursor Bot reviewed Sep 16, 2026
View reviewed changes

@cursor cursor Bot left a comment •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

Stale Bugbot comment from a previous run.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
Comment thread sentry_sdk/integrations/boto3/_client.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

cursor[bot]
cursor Bot reviewed Sep 17, 2026
View reviewed changes

@cursor cursor Bot left a comment •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

Stale Bugbot comment from a previous run.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
Comment thread sentry_sdk/integrations/boto3/_client.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

@pabloDeputter
pabloDeputter force-pushed the pablo/improve-boto3-call-lifecycle branch 2 times, most recently from ddf5deb to 351e3b6 Compare September 17, 2026 15:50
cursor[bot]
cursor Bot reviewed Sep 18, 2026
View reviewed changes

@cursor cursor Bot left a comment •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

Stale Bugbot comment from a previous run.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
Comment thread sentry_sdk/integrations/boto3/_client.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

@pabloDeputter pabloDeputter changed the title feat(boto3): trace logical AWS calls with common attributes feat(boto3): add common OTel AWS client attributes Sep 18, 2026
cursor[bot]
cursor Bot reviewed Sep 21, 2026
View reviewed changes

@cursor cursor Bot left a comment

Copy link
Copy Markdown

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 64d7159. Configure here.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
Comment thread sentry_sdk/integrations/boto3/_instrumentation.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

@pabloDeputter
pabloDeputter force-pushed the pablo/improve-boto3-call-lifecycle branch 2 times, most recently from 1824d8f to 3d95ef4 Compare September 22, 2026 09:18
@pabloDeputter
pabloDeputter force-pushed the pablo/improve-boto3-call-lifecycle branch from 3d95ef4 to f3ed486 Compare September 22, 2026 14:53
@pabloDeputter
pabloDeputter removed this pull request from stack #7541 September 22, 2026 14:57
@pabloDeputter
pabloDeputter added this pull request to stack #7618 September 22, 2026 14:57
ericapisani
ericapisani approved these changes Sep 28, 2026
View reviewed changes
Comment thread sentry_sdk/integrations/boto3/_instrumentation.py
) -> "Attributes":
attributes: "Attributes" = {}

# `rpc.service` is deprecated in OTel, but js still uses it.

@ericapisani ericapisani Sep 28, 2026

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

They likely still use it because it's listed as a valid attribute in our conventions.

Not something for this pull request, but it might be worth raising this in our Slack channel for the conventions to see if this is something that we should look to deprecate as well.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

pabloDeputter reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

@pabloDeputter pabloDeputter Sep 29, 2026

Copy link
Copy Markdown
Contributor Author

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

I was gonna make a collection of all new attributes that will be added during this project (including all the service-specific as well) to check which ones contain sensitive data and whether they already map to existing data collection categories. So I'll add rpc.service to that document as well.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

ericapisani reacted with thumbs up emoji
All reactions
  • 👍 1 reaction
Comment thread tests/integrations/boto3/test_client.py Outdated
assert span["name" if span_streaming else "description"] == span_name
assert attributes[SPANDATA.RPC_SERVICE] == rpc_service
assert attributes[SPANDATA.RPC_METHOD] == rpc_method
assert attributes[SPANDATA.RPC_SYSTEM_NAME] == "aws-api"

@ericapisani ericapisani Sep 28, 2026

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

A small nitpick here (feel free to ignore): you could update the hard-coded string here to be the constant that you created in the other file.

Suggested change
assert attributes[SPANDATA.RPC_SYSTEM_NAME] == "aws-api"
assert attributes[SPANDATA.RPC_SYSTEM_NAME] == _AWS_RPC_SYSTEM_NAME

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

pabloDeputter reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

@pabloDeputter pabloDeputter Sep 29, 2026

Copy link
Copy Markdown
Contributor Author

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

Yupp, I'll move that to consts.py as well

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

ericapisani reacted with rocket emoji
All reactions
  • 🚀 1 reaction
Comment thread tests/integrations/boto3/test_client.py Outdated
Comment on lines +647 to +648
if span_streaming:
_assert_one_failed_span(client_spans, span_streaming=True)

@ericapisani ericapisani Sep 28, 2026

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

Small cleanup suggestion: you could remove this conditional and the extra line inside the block by assigning the span_streaming variable to equal span_streaming:

Suggested change
if span_streaming:
_assert_one_failed_span(client_spans, span_streaming=True)
if span_streaming:
_assert_one_failed_span(client_spans, span_streaming=span_streaming)

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

pabloDeputter reacted with thumbs up emoji
All reactions
  • 👍 1 reaction
@pabloDeputter
pabloDeputter force-pushed the pablo/improve-boto3-call-lifecycle branch from 4562898 to dca0a7b Compare September 29, 2026 08:34
@pabloDeputter
pabloDeputter force-pushed the pablo/improve-boto3-call-lifecycle branch from dca0a7b to 4a23000 Compare September 30, 2026 12:04
@pabloDeputter
pabloDeputter removed this pull request from stack #7618 September 30, 2026 12:05
@pabloDeputter
pabloDeputter added this pull request to stack #7792 September 30, 2026 12:05
@pabloDeputter
pabloDeputter force-pushed the pablo/improve-boto3-call-lifecycle branch from 4a23000 to 8b758b2 Compare September 30, 2026 13:31
sentry-warden[bot]
sentry-warden Bot reviewed Sep 30, 2026
View reviewed changes
Comment thread tests/integrations/boto3/test_client.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

pabloDeputter added 6 commits September 30, 2026 16:04
@pabloDeputter
feat(boto3): improve boto3 integration
8518c62
@pabloDeputter
lint
7bf92dd
@pabloDeputter
fix(boto3): overwrite server attributes when request URL is resolved
606c630
@pabloDeputter
ref(boto3): move aws-api to consts.py
74083ab
@pabloDeputter
tests(boto3): move span_streaming inside method call
7e5ba86
@pabloDeputter
ref(boto3): move DEFAULT_PORTS to consts.py
6868ffd
@pabloDeputter
pabloDeputter force-pushed the pablo/improve-boto3-call-lifecycle branch from 8b758b2 to 6868ffd Compare September 30, 2026 14:05
@pabloDeputter
pabloDeputter merged commit 3f786a9 into master Sep 30, 2026
317 of 473 checks passed

Uh oh!

There was an error while loading. Please reload this page.

@pabloDeputter
pabloDeputter deleted the pablo/improve-boto3-call-lifecycle branch September 30, 2026 15:50
@sentry-release-bot sentry-release-bot Bot mentioned this pull request Oct 12, 2026
publish: getsentry/[email protected] getsentry/publish#9830
Closed
6 tasks done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@cursor cursor[bot] cursor[bot] left review comments
@alexander-alderman-webb alexander-alderman-webb alexander-alderman-webb left review comments
@sentry-warden sentry-warden[bot] sentry-warden[bot] left review comments
@ericapisani ericapisani ericapisani approved these changes

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

feat(boto3): Add generic attributes that are common across services

Uh oh!

There was an error while loading. Please reload this page.

3 participants

@pabloDeputter @ericapisani @alexander-alderman-webb
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.
You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.