Skip to content

feat(descriptions): Add descriptions for AWS SDK spans by service, operation and resource - #717

Open
pabloDeputter wants to merge 4 commits into
pablo/aws-resource-name-attributesfrom
pablo/aws-sdk-span-descriptions
Open

pabloDeputter wants to merge 4 commits into
pablo/aws-resource-name-attributesfrom
pablo/aws-sdk-span-descriptions

Conversation

@pabloDeputter

Copy link
Copy Markdown
Member

Description

Adds description templates so it follows the same format like the object.* descriptions in #707:
<Service>.<Operation> <resource>.

op before (name fallback) after
rpc none (Lambda.Invoke) Lambda.Invoke billing, SecretsManager.GetSecretValue db-password, SQS.ChangeMessageVisibility orders; S3.ListBuckets (operations with no resource)
db (DynamoDB, no db.query.text) none (GetItem orders) DynamoDB.GetItem orders, DynamoDB.Query orders.by-status, DynamoDB.BatchGetItem customers, orders, DynamoDB.ListTables
queue.* (SQS, SNS) orders SQS.SendMessageBatch orders, SNS.Publish alerts

Only AWS SDK spans have rpc.service and rpc.method, so other rpc, db and messaging spans are unaffected; db spans that contain the db.query.text attribute keep it as as their description.

@vercel

vercel Bot commented Oct 14, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
sentry-conventions Ready Ready Preview Oct 14, 2026 1:33pm UTC

Request Review

@github-actions

github-actions Bot commented Oct 14, 2026 •

Copy link
Copy Markdown

Semver Impact of This PR

🟡 Minor (new features)

📋 Changelog Preview

This is how your changes will appear in the changelog.
Entries from this PR are highlighted with a left border (blockquote style).


New Features ✨

Attributes

  • Add AWS Lambda, Step Functions and Secrets Manager name attributes by pabloDeputter in #716
  • Add http.request.duration by loewenheim in #697

Other

  • (descriptions) Add descriptions for AWS SDK spans by service, operation and resource by pabloDeputter in #717

Internal Changes 🔧

  • (repo) Update CODEOWNERS to include @giortzisg by Lms24 in #708

🤖 This preview updates automatically when you update the PR.

@pabloDeputter
pabloDeputter changed the base branch from main to pablo/aws-resource-name-attributes October 14, 2026 13:24
@pabloDeputter
pabloDeputter added this pull request to stack #718 October 14, 2026 13:24

@cursor cursor Bot left a comment

Copy link
Copy Markdown

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 2 potential issues.

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 5b2f4cf. Configure here.

"templates": [
"{{rpc.service}}.{{rpc.method}} {{aws.s3.bucket}}",
"{{rpc.service}}.{{rpc.method}} {{faas.invoked_name}}",
"{{rpc.service}}.{{rpc.method}} {{aws.lambda.function.name}}",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Lambda name attribute is shadowed

Medium Severity

faas.invoked_name is listed ahead of aws.lambda.function.name. Lambda calls that take FunctionName carry both the raw parameter, often a qualified name or ARN, and the normalized function name. The first complete template wins, so the normalized name never becomes the span description.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 5b2f4cf. Configure here.

Comment thread model/description/db.json
"{{db.query.text}}",
"{{rpc.service}}.{{rpc.method}} {{aws.dynamodb.table_names}}.{{aws.dynamodb.index_name}}",
"{{rpc.service}}.{{rpc.method}} {{aws.dynamodb.table_names}}",
"{{rpc.service}}.{{rpc.method}}"

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

DynamoDB descriptions drop table names

Medium Severity

GetItem and Query spans keep the table on db.collection.name, while aws.dynamodb.table_names is defined as the keys of RequestItems. Those calls miss the table templates and match rpc.service plus rpc.method, so the description is DynamoDB.GetItem and replaces the name fallback that included the table.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 5b2f4cf. Configure here.

This branch was successfully deployed

1 active deployment
Preview — 5b2f4cf9 Deployed Oct 14, 2026 by vercel[bot]
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.

1 participant