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

Improve urllib3 instrumentation examples #3347

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

andremm
Copy link
Contributor

@andremm andremm commented Mar 7, 2025

Description

There's one instrumentation example inside urllib3 that doesn't run. This PR fixes the example, so it runs. It also ports instrumentation examples to README.rst to match the examples in the urllib3 documentation.

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

  1. Clone contrib repo: git clone https://github.com/open-telemetry/opentelemetry-python-contrib
  2. Clone OTel Python repo: git clone https://github.com/open-telemetry/opentelemetry-python
  3. Access the contrib repo: cd opentelemetry-python-contrib
  4. Create a virtual env: python3 -m venv otelvenv
  5. Activate the virtual env: source otelvenv/bin/activate
  6. Install common dependencies:
pip install opentelemetry-distro/ opentelemetry-instrumentation/ \
 ../opentelemetry-python/opentelemetry-semantic-conventions/ \
 ../opentelemetry-python/opentelemetry-api/ \
 ../opentelemetry-python/opentelemetry-sdk/ \
 ../opentelemetry-python/opentelemetry-proto/ \
 ../opentelemetry-python/exporter/opentelemetry-exporter-otlp-proto-common
  1. Install urllib3 specific requirements:
pip install -r instrumentation/opentelemetry-instrumentation-urllib3/test-requirements.txt
  1. Copy the instrumentation examples inside the instrumentation main __init__.py file into different Python files and try to run them.

Does This PR Require a Core Repo Change?

  • Yes. - Link to PR:
  • No.

Checklist:

See contributing.md for styleguide, changelog guidelines, and more.

  • Followed the style guidelines of this project
  • Changelogs have been updated
  • Unit tests have been added
  • Documentation has been updated

@github-actions github-actions bot requested a review from shalevr March 7, 2025 16:17
@xrmx xrmx added the Skip Changelog PRs that do not require a CHANGELOG.md entry label Mar 7, 2025
Copy link
Contributor

@xrmx xrmx left a comment

Choose a reason for hiding this comment

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

If you go multiline with arguments, formatters format every line with a trailing comma

pass

URLLib3Instrumentor().instrument(
request_hook=request_hook, response_hook=response_hook
request_hook=request_hook,
response_hook=response_hook
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
response_hook=response_hook
response_hook=response_hook,


URLLib3Instrumentor().instrument(
request_hook=request_hook, response_hook=response_hook
request_hook=request_hook,
response_hook=response_hook
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
response_hook=response_hook
response_hook=response_hook,

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Skip Changelog PRs that do not require a CHANGELOG.md entry
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants