Replies: 1 comment
-
Excellent writeup, very helpful. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
As of the 2024-09-20 release, the AWS SDK for Go v2 is now instrument to record both trace spans and client-side metrics.
Background
Service clients now have two additional configuration options:
While heavily inspired by the OpenTelemetry (OTEL) specifications for tracing and metrics, the APIs for these new configs are defined independently in smithy-go. This allows us to retain control over the APIs and component boundaries therein.
By default, clients default to no-op implementations for both tracing and metrics. In order to provide an out-of-the-box solution for connecting a concrete implementation, we have released adapters for the OTEL tracing and metrics SDKs in standalone, independently consumable go modules:
trace.TracerProvider
to be used with a service client'sTracerProvider
.metric.MeterProvider
to be used with a service client'smetrics.MeterProvider
.Tracing
Quickstart guide
The new
Adapt()
API insmithyoteltracing
is used to connect a concrete OTEL SDK TracerProvider to SDK client config:SDK operations have been instrumented with a span hierarchy that roughly breaks down the high-level components of the operation lifecycle (e.g. request serialization, signing, retry loop).
Metrics
The new
Adapt()
API insmithyotelmetrics
is used to connect a concrete OTEL SDK MeterProvider to SDK client config:Quickstart guide
Supported metrics
In this initial release, SDK clients collect the following metrics:
We plan to add HTTP client metrics in a future release. This is tracked in #2809.
Feedback
We'd like to hear from you about your experience with tracing and metrics in this SDK. If you have any feedback or suggestions, or would like to report a bug, please don't hesitate to file an issue in this repository.
Beta Was this translation helpful? Give feedback.
All reactions