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

otlp-proto-grpc default exporter appears to break auto-instrumentation #1189

Closed
jeremydvoss opened this issue Jul 8, 2022 · 10 comments
Closed
Labels
bug Something isn't working

Comments

@jeremydvoss
Copy link
Contributor

Describe your environment
Windows 11 - Python 3.10.4 - Local OT 1.12.0rc1-0.31b0
Ubuntu 20/04 - Python 3.8.10 - Local OT 1.12.0rc1-0.31b0

Steps to reproduce
Checkout e27f2b8 in core repo. This is the final rc1 commit.
Checkout 51ba801 in contrib repo. This is the commit that added grpc for auto-instrumentation.
Follow these instructions to trigger auto-instrumentation.
This should produce multiple errors on Linux and Windows saying:
RuntimeError: Requested component 'otlp_proto_grpc' not found in entry points for 'opentelemetry_metrics_exporter'

What is the expected behavior?
The above case should produce no errors. To see what that should look like, here is a control case.
Remain at e27f2b8 in core repo. This is the final rc1 commit.
Rewind one commit to ad15f7b in contrib repo. This is the commit before adding grpc for auto-instrumentation.
Follow these instructions to trigger auto-instrumentation.
This should produce no errors. Instead, you should only see output along the lines of:

 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off
 * Running on http://127.0.0.1:8082 (Press CTRL+C to quit)

What is the actual behavior?
RuntimeError: Requested component 'otlp_proto_grpc' not found in entry points for 'opentelemetry_metrics_exporter'

Additional context
Add any other context about the problem here.

@jeremydvoss jeremydvoss added the bug Something isn't working label Jul 8, 2022
@jeremydvoss
Copy link
Contributor Author

The PR in question is this

@srikanthccv
Copy link
Member

Fixed open-telemetry/opentelemetry-python#2748. Please use rc2 version.

@srikanthccv srikanthccv closed this as not planned Won't fix, can't repro, duplicate, stale Jul 8, 2022
@jeremydvoss
Copy link
Contributor Author

jeremydvoss commented Jul 8, 2022

This problem still exists in rc2. I'm using contrib commit 127518b and core commit fe26ada . The problem exists for me for every commit since those I identified in the description.

@srikanthccv
Copy link
Member

Can you share your pip freeze output?

@jeremydvoss
Copy link
Contributor Author

It looks like it's actually just a separate problem. Some packages like opentelemetry-instrumentation-aws-lambda and opentelemetry-instrumentation-logging have not been updated. It's causing a version conflict. But if this issue persists, I'll make a separate issue for it. Thanks @srikanthccv

$ pip list | grep opentel
azure-monitor-opentelemetry-exporter     1.0.0b6
opentelemetry-api                        1.12.0rc2 c:\users\jeremyvoss\workplace\opentelemetry-python\opentelemetry-api\src
opentelemetry-distro                     0.32b0    c:\users\jeremyvoss\workplace\opentelemetry-python-contrib\opentelemetry-distro\src
opentelemetry-exporter-otlp-proto-grpc   1.12.0rc2 c:\users\jeremyvoss\workplace\opentelemetry-python\exporter\opentelemetry-exporter-otlp-proto-grpc\src
opentelemetry-instrumentation            0.32b0    c:\users\jeremyvoss\workplace\opentelemetry-python-contrib\opentelemetry-instrumentation\src
opentelemetry-instrumentation-aws-lambda 0.31b0
opentelemetry-instrumentation-flask      0.32b0    c:\users\jeremyvoss\workplace\opentelemetry-python-contrib\instrumentation\opentelemetry-instrumentation-flask\src
opentelemetry-instrumentation-logging    0.31b0
opentelemetry-instrumentation-requests   0.32b0    c:\users\jeremyvoss\workplace\opentelemetry-python-contrib\instrumentation\opentelemetry-instrumentation-requests\src
opentelemetry-instrumentation-wsgi       0.32b0    c:\users\jeremyvoss\workplace\opentelemetry-python-contrib\instrumentation\opentelemetry-instrumentation-wsgi\src
opentelemetry-propagator-aws-xray        1.0.1
opentelemetry-proto                      1.12.0rc2 c:\users\jeremyvoss\workplace\opentelemetry-python\opentelemetry-proto\src    
opentelemetry-sdk                        1.12.0rc2 c:\users\jeremyvoss\workplace\opentelemetry-python\opentelemetry-sdk\src      
opentelemetry-semantic-conventions       0.32b0    c:\users\jeremyvoss\workplace\opentelemetry-python\opentelemetry-semantic-conventions\src
opentelemetry-util-http                  0.32b0    c:\users\jeremyvoss\workplace\opentelemetry-python-contrib\util\opentelemetry-util-http\src

@Yamakaky
Copy link

I have the same issue. I tried to set OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf but this env var doesn't seem to be used in the sdk?

@lzchen
Copy link
Contributor

lzchen commented Aug 22, 2022

@Yamakaky
Is this issue even related? Are you having the same problem as open-telemetry/opentelemetry-python#2586

@Yamakaky
Copy link

I have the same initial problem, and additionally the env variable doesn't work.

@lzchen
Copy link
Contributor

lzchen commented Aug 23, 2022

@jeremydvoss
What was the resolution of the above issue? Could you provide some guidance?

@jeremydvoss
Copy link
Contributor Author

@Yamakaky . The solution for me was upgrading to the latest versions of everything. FOr a brief time, since not all the packages were updated, there were conflicts that prevented this. But once I removed those unneeded packages, I was able to upgrade and solve the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants