Skip to content

ref(boto3): Own one logical botocore client-call lifecycle #7474

Description

@pabloDeputter

Problem

  • spans are currently created in request-created. Botocore may emit this during retries; it's also too late to cover any failures during operation lookup, parameter construction, serialization, or other work before an HTTP request exists.

Proposed Solution

  • patch BaseClient._make_api_call as OTel does; one logical client span should cover all retries until response, error, or cancellation.
  • wrapper is the only owner of the aws client span's start and completion.
  • _AwsCallContext can be used to contain generic data such botocore client, service name, operation name, region, endpoint URL, etc

Sources

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions