-
Notifications
You must be signed in to change notification settings - Fork 178
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
feat: parts of the gRPC istrumentation #1303
base: main
Are you sure you want to change the base?
Conversation
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.
Thank you, @michal-kazmierczak! This looks great! I have a few comments on the files.
Also, I noticed is this PR is from your main
branch. We recommend contributors put their work on a branch other than main
because the repo's strategy is to squash when we merge, which can cause problems when you update your fork after your main
branch is merged.
instrumentation/grpc/lib/opentelemetry/instrumentation/grpc/patches/client_stub.rb
Outdated
Show resolved
Hide resolved
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 is great, incremental progress. In my opinion, once the branch is updated, this is ready to merge, @michal-kazmierczak.
d324da0
to
c167be0
Compare
Thank you. I've rebased it now. |
f73d9d9
to
74ced70
Compare
Co-authored-by: Kayla Reopelle <[email protected]>
Co-authored-by: Kayla Reopelle <[email protected]>
…tches/client_stub.rb Co-authored-by: Kayla Reopelle <[email protected]>
Co-authored-by: Kayla Reopelle <[email protected]>
74ced70
to
4741b3d
Compare
This PR includes parts of the gRPC instrumentation adaptation outlined in: #1261
This PR does not make the gem ready to release.
The primary change is that the instrumentation leverages the use of interceptors (a concept parallel to middlewares).
Also, there is a patch that instruments every stub (client) created after the OpenTelemetry installation. This aligns the instrumentation behavior with other libraries, so end-users do not need to manually add interceptors.
I decided not to include relatively easy changes that would make the diff quite more difficult to follow (i.e. migration to Rubocop). However, this PR also includes the migration from RSpec to minitest and other minor alignments (like installation of Appraisals or unified Rakefile).
It would be great if this PR could be reviewed and merged, allowing me to proceed with the remaining adaptations.