-
Notifications
You must be signed in to change notification settings - Fork 697
Remove SDK dependency from auto-instrumentation #1420
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
Merged
codeboten
merged 16 commits into
open-telemetry:master
from
codeboten:instrumentation-decoupling
Dec 14, 2020
Merged
Changes from 2 commits
Commits
Show all changes
16 commits
Select commit
Hold shift + click to select a range
094e377
move initialize_components into the SDK
07a51ee
uncomment code
c65b4a0
warn if configuration has already been loaded
2646f80
Merge remote-tracking branch 'origin/master' into instrumentation-dec…
053cae3
fix tests
d854250
adding ABC for Configurator
4165e2c
update dependencies
03e0ca2
fix tests
9573a91
fix tox
97fcbda
Merge branch 'master' into instrumentation-decoupling
lzchen 2dd75a2
Upgrade isort and enable black compat mode (#1467)
owais d76c75c
Clone the contrib for every docs build requirement (#1464)
NathanielRN 0852860
fix lint
b4ca147
Merge branch 'master' into instrumentation-decoupling
lzchen 7064514
Merge branch 'master' into instrumentation-decoupling
ccb651b
Merge branch 'master' into instrumentation-decoupling
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
This could be just a function as well right?
and then in
sitecustomize.py
it would just beentry_point.load()()
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.
Hmno, the
load
method will yield the object that is pointed by the entry point value, in this caseopentelemetry.sdk.configuration:Configurator
which is a class. An entry point can point to a method, or some other object, but what this approach that we have been using is to declare an ABC in the API that mandates that certain method is implemented in order for the entry pointed classes to have it and run it whensitecustomize
is invoked.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 see, having the ABC would be helpful. Where would that definition go though? In
opentelemetry-instrumentation
oropentelemetry-sdk
?Does that mean that the other package would have to take the package that includes the ABC as a dependency?
(The
opentelemtery-sdk
to have itsConfigurator
up to requirements and theopentelmetry-instrumentation
to be able to validate classes it finds through the entry points)?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.
The ABC will be in the API.
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.
No, wait, that ABC should be in
opentelemetry-instrumentation
. Sorry 😅