Hello guys, I'm just getting started with SigNoz u...
# support
e
Hello guys, I'm just getting started with SigNoz using Python. After spinning up SigNoz docker image through the
./install
command, I see that the dashboard is already up and running on
<http://localhost:3301/application>
. After configuring the environment variables with this command:
OTEL_RESOURCE_ATTRIBUTES=service.name=Flask_App OTEL_METRICS_EXPORTER=none OTEL_EXPORTER_OTLP_ENDPOINT="<http://localhost:4317>" opentelemetry-instrument python3 app.py
, I don't see I don't see Flask_App is shown on the dashboard. Any idea what I'm doing wrong here?
s
Did you generate any traces by visiting application routes?
e
yes, I invoked a Flask route but saw that the Flask app is not triggered in the dashboard
s
Are you using the sample app? Or your own?
e
My own. I also had the same issue with the sample app
s
What is the requirements.txt or pip list/pip freeze output?
e
Copy code
$ pip freeze
amqp==2.6.1
backoff==1.11.1
billiard==3.6.4.0
celery==4.4.1
certifi==2021.10.8
charset-normalizer==2.0.12
click==8.1.3
Deprecated==1.2.13
Flask==2.1.0
googleapis-common-protos==1.56.1
grpcio==1.46.3
idna==3.3
importlib-metadata==4.11.4
itsdangerous==2.1.2
Jinja2==3.1.2
kombu==4.6.11
MarkupSafe==2.1.1
opentelemetry-api==1.12.0rc1
opentelemetry-distro==0.31b0
opentelemetry-exporter-otlp==1.12.0rc1
opentelemetry-exporter-otlp-proto-grpc==1.12.0rc1
opentelemetry-exporter-otlp-proto-http==1.12.0rc1
opentelemetry-instrumentation==0.31b0
opentelemetry-proto==1.12.0rc1
opentelemetry-sdk==1.12.0rc1
opentelemetry-semantic-conventions==0.31b0
protobuf==3.20.1
pymongo==3.12.1
pytz==2022.1
redis==3.4.1
requests==2.27.1
six==1.16.0
typing_extensions==4.2.0
urllib3==1.26.9
vine==1.3.0
Werkzeug==2.1.2
wrapt==1.14.1
zipp==3.8.0
s
What is the configured exporter?
e
Do you mean the env var?
s
Either env or command line arg
e
Is this what you mean or something else:
Copy code
OTEL_RESOURCE_ATTRIBUTES=service.name=Flask_App OTEL_METRICS_EXPORTER=none OTEL_EXPORTER_OTLP_ENDPOINT="<http://localhost:4317>"
s
Can you set
OTEL_TRACES_EXPORTER=console
and see if it outputs the traces to stdout?
👍 1
e
set it up but the traces are not outputted to stdout
s
You app instrumentation is not working or not being instrumented in the first place i.e not telemetry getting emitted.
e
How is that happening and the SigNoz dashboard is running?
s
What do you mean? Your application and SigNoz process those are two separate things.
SigNoz also ships with hotrod example to show you the capabilities. Are you mistaking for that?
e
I mean how the instrumentation done by OpenTelemetry ,whose backend is SigNoz, is not running while SigNoz dashboard is running
not sure about the hotrod example you're referring to. Here is the tutorial I'm following: https://signoz.io/blog/opentelemetry-flask/
s
As you mentioned, SigNoz is backend. It runs regardless of instrumentation from application. I am not sure what is the point you are trying to make
e
So how to debug that issue and make OpenTelemetry instrument my app?
s
Right now, are you running the sample app or your own?
e
my own. Should I run the sample app to make sure we're on the same page?
s
Your app might do n number of things I don't know about. For example some gunicorn config that OTEL doesn't support such as worker class gevent or eventlet. Or you are running into some other issue. As I pointed out earlier, if you are not seeing console traces then your application is not getting instrumented.
e
I'm now trying with the sample app. Should the environment be Python 3.7+?
s
Yes