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.24b0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2f5e7f96bc8e6727cc8f8e2c5ece47f2f47688714c5a96b05cc4d0b99ba0d2e8 |
|
MD5 | af125b5f2212816106fd1a41bb40f5c6 |
|
BLAKE2b-256 | 2dd8ffe84086ffc143fc1eec231f6299aed7a68598578e45f4f5a80e6ba67410 |
Hashes for opentelemetry_instrumentation_fastapi-0.24b0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fcd47771148222efbe49b3660e267851a18fffcb812a5ceaac3e30e56f13eee9 |
|
MD5 | c9a002a88ccd7f4b15ed9d96fe426db1 |
|
BLAKE2b-256 | e6f7edafcadd56a94308c082d9bb3dd6eb008c512adcbb4f2837fe67b7799f1a |