Skip to content

Add botocore instrumentation#689

Merged
toumorokoshi merged 15 commits intoopen-telemetry:masterfrom
ocelotl:issue_675
Jun 9, 2020
Merged

Add botocore instrumentation#689
toumorokoshi merged 15 commits intoopen-telemetry:masterfrom
ocelotl:issue_675

Conversation

@ocelotl
Copy link
Copy Markdown
Contributor

@ocelotl ocelotl commented May 13, 2020

Fixes #675

@ocelotl ocelotl added the instrumentation Related to the instrumentation of third party libraries or frameworks label May 13, 2020
@ocelotl ocelotl requested a review from a team May 13, 2020 16:20
@ocelotl ocelotl self-assigned this May 13, 2020
@codeboten codeboten added the needs reviewers PRs with this label are ready for review and needs people to review to move forward. label May 14, 2020
Copy link
Copy Markdown
Contributor

@codeboten codeboten left a comment

Choose a reason for hiding this comment

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

Thanks for doing this work, just a couple of changes requested. Looks like there's also an entry missing in the docs.

Comment thread ext/opentelemetry-ext-botocore/CHANGELOG.md
Comment thread ext/opentelemetry-ext-botocore/src/opentelemetry/ext/botocore/version.py Outdated
Comment thread ext/opentelemetry-ext-botocore/setup.cfg Outdated
Comment thread ext/opentelemetry-ext-botocore/setup.cfg Outdated
Comment thread ext/opentelemetry-ext-botocore/setup.cfg Outdated
Comment thread ext/opentelemetry-ext-botocore/setup.cfg Outdated
Comment thread ext/opentelemetry-ext-botocore/src/opentelemetry/ext/botocore/__init__.py Outdated
Comment thread ext/opentelemetry-ext-botocore/tests/test_botocore_instrumentation.py Outdated
Copy link
Copy Markdown
Contributor

@codeboten codeboten left a comment

Choose a reason for hiding this comment

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

Thanks for addressing my comments, the code looks good. Looks like it's missing an entry in the docs.

Copy link
Copy Markdown
Member

@toumorokoshi toumorokoshi left a comment

Choose a reason for hiding this comment

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

Approving although I think there's a few improvements around the data structure choices, looks good!

I wanted to raise a couple questions before we finish it up:

Merge with boto instrumentation?

A lot of code is shared with the boto instrumentation, due to what I assume is relying on data structures that boto exposes that are actually components of botocore. Does it make sense to combine instrumentations? This may help with situations like ensuring botocore instrumentation and boto instrumentation don't overlap each other.

Boto + Botocore auto-instrumentation

I think one can imperatively choose not to instrument boto / botocore depending on what level of granularity they want. But how will this work with auto-instrumentation?

Also I wonder what value instrumenting boto provides if botocore already provides a majority of the context by wrapping the _make_api_call, which I presume is what is called by the boto authenticated requests.

Comment thread ext/opentelemetry-ext-botocore/setup.py Outdated
Comment thread ext/opentelemetry-ext-botocore/src/opentelemetry/ext/botocore/__init__.py Outdated
Comment thread ext/opentelemetry-ext-botocore/src/opentelemetry/ext/botocore/__init__.py Outdated
Copy link
Copy Markdown
Member

@toumorokoshi toumorokoshi left a comment

Choose a reason for hiding this comment

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

@ocelotl if you can follow up quick with the botocore / boto refactor, that would be great. Also a strategy that allows both to work in tandem with auto-instrumentation without double logging all spans.

@toumorokoshi toumorokoshi merged commit 5c17a06 into open-telemetry:master Jun 9, 2020
codeboten added a commit to codeboten/opentelemetry-python that referenced this pull request Jun 11, 2020
Adding initial boto core implementation.

Co-authored-by: alrex <alrex.boten@gmail.com>
srikanthccv pushed a commit to srikanthccv/opentelemetry-python that referenced this pull request Nov 1, 2020
* add benchmark README and latest numbers

* chore: update readme

chore: update readme

* chore: update readme

chore: update readme

* chore: update benchmarks

* generate latest benchmark numbers

Co-authored-by: Daniel Dyla <dyladan@users.noreply.github.com>
Co-authored-by: Olivier Albertini <olivier.albertini@montreal.ca>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

instrumentation Related to the instrumentation of third party libraries or frameworks needs reviewers PRs with this label are ready for review and needs people to review to move forward.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add instrumentation for botocore

3 participants