OpenTelemetry requests Integration

This library allows tracing HTTP requests made by the requests library.

Usage

import requests
import opentelemetry.ext.http_requests
from opentelemetry.trace import tracer_provider

opentelemetry.ext.http_requests.enable(tracer_provider())
response = requests.get(url='https://www.example.org/')

Limitations

Note that calls that do not use the higher-level APIs but use requests.sessions.Session.send (or an alias thereof) directly, are currently not traced. If you find any other way to trigger an untraced HTTP request, please report it via a GitHub issue with [requests: untraced API] in the title.

API

opentelemetry.ext.http_requests.enable(tracer_provider)[source]

Enables tracing of all requests calls that go through requests.session.Session.request (this includes requests.get, etc.).

opentelemetry.ext.http_requests.disable()[source]

Disables instrumentation of requests through this module.

Note that this only works if no other module also patches requests.