Automatic tracing for AWS SDK for JavaScript #276
Locked
dreamorosi
started this conversation in
Maintainers discussions
Replies: 3 comments 1 reply
-
From my point of view, we should not make this decision and let the customer do it with X-Ray SDK already providing an easy enough usable API. |
Beta Was this translation helpful? Give feedback.
1 reply
-
As TS isn’t as clear cut as Python, I’d vote for option 1 — letting them
decide.
This will change either way when the X-Ray team officially makes an
announcement they told me today — I’ll share in tomorrow’s sync
…On Thu, 9 Dec 2021 at 17:41, Andrea Amorosi ***@***.***> wrote:
Agree with you but happy to hear also other opinions; if we all agree then
let's go this way.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#276 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAZPQBENI3FTPPRDKZEHDPDUQDL3VANCNFSM5JUESB7A>
.
|
Beta Was this translation helpful? Give feedback.
0 replies
-
Conclusion: we are not going to do it. |
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
-
Problem statement
The Python version of Powertools automatically traces for AWS SDK clients (and other modules). This is possible thanks to the fact that X-Ray SDK for Python supports checking which modules are imported.
On the other hand AWS currently offers two versions of the AWS SDK for JavaScript (v2 & v3) with only the former bundled in the Javascript runtime and with the latter implementing a modular architecture.
This discussion aims at finding (& documenting) an agreement about the direction that this version of Powertools should take.
Current behaviour
Tracer
allows Customers to opt-in into patching all clients using the methodcaptureAWS
(only for v2) or specific clients using the methodscaptureAWSClient
andcaptureAWSv3Client
.These methods are lifted directly from the X-Ray SDK for JavaScript:
captureAWS
API doc - sourcecaptureAWSClient
API doc - sourcecaptureAWSv3Client
sourcePotential paths forward
Option 1
Leave the decision to Customers and let them decide which client to patch. This would also be the easiest path forward as
Tracer
wouldn't have to know whether v2 and/or v3 is being used.Option 2
Automatically patch all AWS SDK v2 clients by using the
captureAWS
method and relying on the fact that a version of v2 should always be present in the execution environment. Customers that are using v3 would still have to explicitly patch all clients.Beta Was this translation helpful? Give feedback.
All reactions