-
Notifications
You must be signed in to change notification settings - Fork 36
Enhance Synthetic Span Service Representation #655
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
@@ -102,7 +103,7 @@ START | |||
"start":XXXX, | |||
"duration":XXXX, | |||
"links": [], | |||
"service": "aws.lambda", | |||
"service": "integration-tests-js-XXXX-process-input-traced_node18", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good news. I'm fairly certain this change will not impact billing. Check out this method in dd-go https://github.com/DataDog/dd-go/blob/ba9638063271fa8bec5ce732d88ed0244795cca9/trace/apps/trace-spans-meta-extractor/usage_points.go. We look for a spans with name "aws.lambda" (not service or operation name) and create a billing metric point for each. I was worried this change in the service would impact that, but it looks like it won't.
Just to be sure, if you haven't already, check to make sure the datadog.serverless.traced_invocations
metric is still created for each invocation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is span.name and operation.name not the same thing? As long as operation.name is unchanged, it should be fine as long as I'm understanding the code, the same way you are.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, that's my understanding as well. Still worth double checking by testing these changes in the wild though.
Going to wait for dd-trace-js version update to merge this changes with it and update the tracer dependency |
What does this PR do?
Rollout of span naming changes to align serverless product with tracer to create streamlined Service Representation for Serverless
Key Changes:
span.kind:server
on synthetic spans made via span-inferrerMotivation
Improve Service Map for Serverless. This allows for synthetic spans to have their own service on the map which connects with the inferred spans from the tracer side.
Testing Guidelines
Unit and Integration tests updated accordingly.
Note that any span w/
span.kind
tags are automatically measuredMatching the service name to the instance name essentially removes the need for a base_service tag in some instances due to essentially removing service overrides
Additional Notes
These changes should be synchronized with tracer changes (TBD)
Types of Changes
Check all that apply