OpenTelemetry FastAPI Instrumentation
Project description
This library provides automatic and manual instrumentation of FastAPI web frameworks, instrumenting http requests served by applications utilizing the framework.
auto-instrumentation using the opentelemetry-instrumentation package is also supported.
Installation
pip install opentelemetry-instrumentation-fastapi
Configuration
Exclude lists
To exclude certain URLs from being tracked, set the environment variable OTEL_PYTHON_FASTAPI_EXCLUDED_URLS with comma delimited regexes representing which URLs to exclude.
For example,
export OTEL_PYTHON_FASTAPI_EXCLUDED_URLS="client/.*/info,healthcheck"
will exclude requests such as https://site/client/123/info and https://site/xyz/healthcheck.
Usage
import fastapi
from opentelemetry.instrumentation.fastapi import FastAPIInstrumentor
app = fastapi.FastAPI()
@app.get("/foobar")
async def foobar():
return {"message": "hello world"}
FastAPIInstrumentor.instrument_app(app)
You can also pass the list of urls to exclude explicitly to the instrumentation call:
FastAPIInstrumentor.instrument_app(app, excluded_urls="client/.*/info,healthcheck")
References
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for opentelemetry-instrumentation-fastapi-0.25b1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | b3282317d20d1249fa42a1cc9b0aa1e7b5eb756fbebd1866132a68f35f2a942b |
|
MD5 | 5ad582197576461c39083707f8ec4fcf |
|
BLAKE2b-256 | 89a49fb70fdbf53cf497a16ef3d6a0cf6d66cdae1007ee37437f88388ef65df2 |
Hashes for opentelemetry_instrumentation_fastapi-0.25b1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f1cd054f81a5ebef4d77952576de9972df5380ab5a1674261db70a81ca21e396 |
|
MD5 | 306a28400da712000b593835ee427911 |
|
BLAKE2b-256 | 5d69070fa1f1c338f922b117546b250f8078608187b06bf8c9909a6833cb236a |