Skip to content

Increase internal metrics coverage #4248

@landonxjames

Description

@landonxjames

#4021 introduced a small set of client metrics, currently only smithy.client.call.duration and smithy.client.call.attempt duration. We would like to expand this set of metrics to include some of the other suggested metrics in the SRA. Some that we are interested in include:

  • smithy.client.uptime - The amount of time since a client was created
  • smithy.client.call.attempts - The number of attempts for an individual operation
  • smithy.client.call.errors - The number of errors for an operation
  • smithy.client.call.serialization duration - The time it takes to serialize a message body
  • smithy.client.call.deserialization duration - The time it takes to deserialize a message body
  • smithy.client.call.auth.signing duration - The time it takes to sign a request
  • smithy.client.call.auth.resolve identity duration - The time taken to acquire an identity (AWS credentials, bearer token, etc) from an Identity Provider

Some other metrics, mostly those in the smithy.client.http namespace, will likely be impossible since they would require instrumenting inside of Hyper.

It would also be ideal if we could integrate these metrics with our automated performance tests (introduced in #3953) since those were implemented ad hoc before the metrics were in place.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions