-
Notifications
You must be signed in to change notification settings - Fork 133
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
Add new fields to service to track new data type and name #1279
Add new fields to service to track new data type and name #1279
Conversation
🌐 Coverage report
|
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.
We also need to add in the functionality to actually capture these values for SQL databases.
f238a31
to
47168ea
Compare
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.
I think it would make sense to add tests for the database instrumentations, right?
Also, don't we have to keep the existing fields for compatibility with the UI?
After reviewing the spec again for making these changes, there are a few adjustments to this PR:
|
4944b7f
to
9aaaafb
Compare
I was uncertain about that. It seems like the spec says "Infer from those new fields the value of span.destination.service.resource and keep sending it." - does that mean that other span.destination.service.* parameters should be removed and only resource should be retained? It's fairly easy to do either way, I just don't completely understand the wording there. |
I think at this point, we are only supposed to add the new fields and not stop sending any existing fields. |
Just for posterity's sake, the existing sequel spy did not send destination.service.name or destination.service.type before this PR, so they are not being sent. Had to double check that to make sure I didn't accidentally delete them. |
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.
I noticed a typo so proposed a correction but I also suggest adding a test that would have caught the typo.
I just saw that the tests are failing but I approve the code changes once they are passing. Let's get the tests passing before merging. I'm happy to do another code review once the test failures are fixed. Thanks! |
* Add new fields to service to track new data type and name * Add missing reference to service in context * Testing for new service.target.name and ~.type fields * Update spies to use new service.target.name/type * Remove changes to non-sequel spies and attempt to get database name from connection * Add new fields to service to track new data type and name * Add missing reference to service in context * Update spies to use new service.target.name/type * Update specs for final sql granularity changes * Reset azure_storage_table spy - no changes needed in this pr * Add one more test for span context serializer * less restrictive test for sequel service.target.name * Add a spec covering set_destination * Update db_name logic in sequel spy
What does this pull request do?
Adds new fields to agent-server protocol, specifically span.context.service.target.type and span.context.service.target.name
Why is it important?
These fields will be used in the future as the correct way to capture service details in the agent-server API
Checklist
.rubocop.yml
)Related issues
Relates #1244 (partially completes)