Allows us to do multi-level trace merging between Step Functions and Node Lambda functions
multi-level trace merging
Added logic to extract trace context from _datadog for Step Functions cases where...
Root of the overall execution is a Lambda. This means we have the x-datadog-trace-id and x-datadog-tags but we need to compute the parentID using parent SFN context object
Root of the overall execution is another Step Function. This means we need to compute both traceID and parentID from RootExecutionId and the parent SFN context object
Legacy case where there's no _datadog and we instead figure out traceID and parentID from the parent SFN context object
live testing
Lambda1 --> SFN --> Lambda2trace
a. Lambda1 is actually in Python, cool how we can mix and match runtimes
What does this PR do?
Allows us to do multi-level trace merging between Step Functions and Node Lambda functions
multi-level trace merging
Added logic to extract trace context from
_datadog
for Step Functions cases where...x-datadog-trace-id
andx-datadog-tags
but we need to compute the parentID using parent SFN context objectRootExecutionId
and the parent SFN context object_datadog
and we instead figure out traceID and parentID from the parent SFN context objectlive testing
Lambda1 --> SFN --> Lambda2
trace a. Lambda1 is actually in Python, cool how we can mix and match runtimesSFN --> Lambda
tracetrigger tag improvements
Also fixed the trigger tags parsing for our use case!
Motivation
Testing Guidelines
Additional Notes
Types of Changes
Check all that apply