Skip to content
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: aws-sdk instrumentation #1014

Merged
merged 30 commits into from
Nov 19, 2021

Conversation

YanivD
Copy link
Member

@YanivD YanivD commented Nov 10, 2021

Related to issue open-telemetry/opentelemetry-ruby-contrib#13

During the development I looked on 2 examples:

This is my first PR in Ruby, so please review this PR carefully 🙏

end
}

if instrumentation_config[:suppress_internal_instrumentation]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✨ I really like this!

@open-telemetry/ruby-maintainers I do realize we don't love using untraced but I think this would be great to include as an option for other instrumentation where we may have redundant client instrumentation (if we are not doing so already)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@arielvalentin
Agree!
It reduce the amount of redundant spans and making the trace much clearer.

Many nodejs otel instrumentations accept this option, like opentelemetry-instrumentation-aws-sdk.
suppress_internal_instrumentation option should always be false by default to make sure adding new instrumentations won't remove existing spans.

Copy link
Contributor

@arielvalentin arielvalentin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good to me! Thank you very much for this excellent contribution.

I will defer to any other reviewers who have more experience than I using the AWS instrumentation.

class Plugin < Seahorse::Client::Plugin
def add_handlers(handlers, config)
# run before Seahorse::Client::Plugin::ParamValidator (priority 50)
handlers.add Handler, step: :validate, priority: 49
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Question for AWS users... is there anyway to look up the position/priority of an existing Handler like we can do with Rails middleware?

Copy link
Member

@mwear mwear left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just have a couple of comments / questions, but otherwise this looks really good. Thanks for the contribution @YanivD!

Copy link
Contributor

@ericmustin ericmustin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few small nits, generally lgtm nice work!

YanivD and others added 2 commits November 16, 2021 08:38
…sdk/instrumentation.rb

Co-authored-by: Eric Mustin <mustin.eric@gmail.com>
@ericmustin
Copy link
Contributor

Lgtm pending some of the feedback from @mwear getting addressed/resolved. nice work here ty for the contribution!

Copy link
Member

@mwear mwear left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Thanks for addressing my feedback!

YanivD and others added 5 commits November 16, 2021 19:56
…t.rb

Co-authored-by: Ariel Valentin <arielvalentin@users.noreply.github.com>
…t.rb

Co-authored-by: Ariel Valentin <arielvalentin@users.noreply.github.com>
…t.rb

Co-authored-by: Ariel Valentin <arielvalentin@users.noreply.github.com>
@YanivD
Copy link
Member Author

YanivD commented Nov 17, 2021

Is there anything else missing before merge and release?

@open-telemetry/ruby-maintainers

@mwear
Copy link
Member

mwear commented Nov 17, 2021

I believe everything has been addressed. Any objections to me merging this @robertlaurin and @fbogsany?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants