Created
July 5, 2021 09:18
-
-
Save RobertRosca/c7a282ce7746c0d06a659e0c235c371d to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import flask | |
import requests | |
from opentelemetry import trace | |
from opentelemetry.instrumentation.flask import FlaskInstrumentor | |
from opentelemetry.exporter.jaeger.thrift import JaegerExporter | |
from opentelemetry.instrumentation.requests import RequestsInstrumentor | |
from opentelemetry.sdk.trace.export import BatchSpanProcessor | |
from opentelemetry.sdk.resources import SERVICE_NAME, Resource | |
from opentelemetry.sdk.trace import TracerProvider | |
from opentelemetry.sdk.trace.export import ( | |
ConsoleSpanExporter, | |
SimpleSpanProcessor, | |
) | |
trace.set_tracer_provider( | |
TracerProvider( | |
resource=Resource.create({SERVICE_NAME: "flask-example"}) | |
) | |
) | |
jaeger_exporter = JaegerExporter( | |
agent_host_name="localhost", | |
agent_port=6831, | |
) | |
trace.get_tracer_provider().add_span_processor( | |
BatchSpanProcessor(jaeger_exporter) | |
) | |
app = flask.Flask(__name__) | |
FlaskInstrumentor().instrument_app(app) | |
RequestsInstrumentor().instrument() | |
@app.route("/") | |
def hello(): | |
tracer = trace.get_tracer(__name__) | |
with tracer.start_as_current_span("example-request"): | |
requests.get("http://www.example.com") | |
return "hello" | |
app.run(debug=True, port=5000) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment