-
Notifications
You must be signed in to change notification settings - Fork 318
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
Introduce service naming framework #2941
Conversation
Overall package sizeSelf size: 4 MB Dependency sizes
🤖 This report was automatically generated by heaviest-objects-in-the-universe |
Codecov Report
@@ Coverage Diff @@
## master #2941 +/- ##
==========================================
- Coverage 87.19% 86.89% -0.30%
==========================================
Files 317 304 -13
Lines 11512 10791 -721
Branches 33 33
==========================================
- Hits 10038 9377 -661
+ Misses 1474 1414 -60
... and 18 files with indirect coverage changes 📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
aa422c8
to
1ce5b80
Compare
1ce5b80
to
0e7dd20
Compare
9d58aba
to
666ed7a
Compare
d6c89eb
to
e342157
Compare
Ongoing to-do list:
|
8122b35
to
59c42f3
Compare
BenchmarksComparing candidate commit 4c0e856 in PR branch Found 0 performance improvements and 28 performance regressions! Performance is the same for 639 metrics, 41 unstable metrics. scenario:log-with-debug-14
scenario:log-with-error-14
scenario:log-skip-log-14
scenario:log-without-log-14
scenario:startup-with-tracer-14
scenario:log-without-log-16
scenario:log-with-debug-16
scenario:log-with-error-16
scenario:log-skip-log-16
scenario:startup-with-tracer-16
scenario:log-with-debug-18
scenario:log-skip-log-18
scenario:log-with-error-18
scenario:log-without-log-18
scenario:startup-with-tracer-18
|
ca5d3e1
to
e1db72b
Compare
The benchmark workflows were resource-starved, rerunning was enough. |
* Add interaction with the `DD_TRACE_SPAN_ATTRIBUTE_SCHEMA` environment variable * Provide the building blocks for 2 versions of an service and operation naming schema: * `v0` is the current version, i.e. a representation of the existing state of the plugin. One could checkout the commit with the introduction of this version, and have unchanged tests still pass. * `v1` is the new naming schema, made consistent across all tracers. * Introduce a testing harness for easy tests of `v0` _and_ `v1` naming * Apply this versioned naming for all messaging integrations - `rhea`, `amqp(10|lib)`, `kafkajs`, `google-cloud-pubsub`
* Add interaction with the `DD_TRACE_SPAN_ATTRIBUTE_SCHEMA` environment variable * Provide the building blocks for 2 versions of an service and operation naming schema: * `v0` is the current version, i.e. a representation of the existing state of the plugin. One could checkout the commit with the introduction of this version, and have unchanged tests still pass. * `v1` is the new naming schema, made consistent across all tracers. * Introduce a testing harness for easy tests of `v0` _and_ `v1` naming * Apply this versioned naming for all messaging integrations - `rhea`, `amqp(10|lib)`, `kafkajs`, `google-cloud-pubsub`
* Add interaction with the `DD_TRACE_SPAN_ATTRIBUTE_SCHEMA` environment variable * Provide the building blocks for 2 versions of an service and operation naming schema: * `v0` is the current version, i.e. a representation of the existing state of the plugin. One could checkout the commit with the introduction of this version, and have unchanged tests still pass. * `v1` is the new naming schema, made consistent across all tracers. * Introduce a testing harness for easy tests of `v0` _and_ `v1` naming * Apply this versioned naming for all messaging integrations - `rhea`, `amqp(10|lib)`, `kafkajs`, `google-cloud-pubsub`
* Add interaction with the `DD_TRACE_SPAN_ATTRIBUTE_SCHEMA` environment variable * Provide the building blocks for 2 versions of an service and operation naming schema: * `v0` is the current version, i.e. a representation of the existing state of the plugin. One could checkout the commit with the introduction of this version, and have unchanged tests still pass. * `v1` is the new naming schema, made consistent across all tracers. * Introduce a testing harness for easy tests of `v0` _and_ `v1` naming * Apply this versioned naming for all messaging integrations - `rhea`, `amqp(10|lib)`, `kafkajs`, `google-cloud-pubsub`
What does this PR do?
This PR:
DD_TRACE_SPAN_ATTRIBUTE_SCHEMA
environment variablev0
is the current version, i.e. a representation of the existing state of the plugin. One could checkout the commit with the introduction of this version, and have unchanged tests still pass.v1
is the new naming schema, made consistent across all tracers.v0
andv1
namingrhea
,amqp(10|lib)
,kafkajs
,google-cloud-pubsub
Motivation
This is part of the service representation initiative, which provides in an opt-in way a new manner of naming services and operations, and will introduce
peer.service
soon.The opt-in nature of the change guarantee that we do not break naming for existing deployments.