NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1226 most downloaded on PyPI
The best Python observability tool! 🪵🔥
Last release today
17 Sep 2026
Ships fairly regularly
a new release about every 2 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
193 releases · first in 2020
One column per quarter.
Use local timezone in console logging by @fswair in #1255
logfire run command by @Kludex in #1139litellm instrumentation by @alexmojaki in #1249logfire.exception.fingerprint attribute to spans with exceptions by @alexmojaki in #1253Fix auto-tracing Python 3.12 ParamSpec syntax by @alexmojaki in #1247
Support OpenTelemetry 1.35.0 by @alexmojaki in #1242
Add experimental logfire.instrument_litellm() by @alexmojaki in #1237
logfire.instrument_litellm() by @alexmojaki in #1237Add info method to logfire query clients by @hramezani in #1204
Fix OpenAI streaming reasoning by @alexmojaki in #1232
Add instrument_google_genai by @alexmojaki in #1217
Fix importlib resources with auto tracing by @alexmojaki in #1212
Fix for new OpenAI Agents SDK by @alexmojaki in #1152
Add up counter/histogram metrics in spans by @alexmojaki in #1099
Add baggage utilities by @dmontagu in #1128
logfire.instrument_aiohttp_server() by @adtyavrdhn in #1131
logfire.instrument_aiohttp_server() by @adtyavrdhn in #1131pydantic_core.Url and pydantic.AnyUrl by @dmontagu in #1130Upgrade to OpenTelemetry SDK 1.34.0 by @alexmojaki in #1120
LangChain instrumentation via LangSmith by @alexmojaki in #1084
Fixes for OpenAI Responses API and Agents SDK by @alexmojaki in #1092, #1093, #1094, and #1095
logfire.msg in structlog integration by @alexmojaki in #1113django extra by @alexmojaki in #1097Infer base URL from read token in query client by @Viicos in #1088
Make OpenAI spans show token usage in logfire UI by @alexmojaki in #1076
do_not_scrub and binary_content as safe keys for scrubber by @alexmojaki in #1075Support OpenTelemetry SDK 1.33.0 by @alexmojaki in #1067
This is technically a breaking change as it means less data is sent to Logfire, but most users don't use it and some will save a significant amount of…
http.server.active_requests metric to prevent emitting too many by @alexmojaki in #1060
Handle changes in openai and anthropic by @alexmojaki in #1030
Experimental functions for recording feedback annotations
Upgrade to OpenTelemetry SDK 1.32.0 by @alexmojaki in #991
Emit logs sent from MCP server to client by @alexmojaki in #974
Add logfire.instrument_mcp() method by @alexmojaki in #966
Add record_return flag to @logfire.instrument by @alexmojaki in #955
record_return flag to @logfire.instrument by @alexmojaki in #955Account for new EU region by @Viicos in #901
Handle Anthropic thinking blocks by @alexmojaki in #952
Add logfire.instrument_pydantic_ai() by @alexmojaki in #926
logfire.instrument_pydantic_ai() by @alexmojaki in #926Upgrade to OpenTelemetry 1.31.0 by @alexmojaki in #927
OpenAI Agents Framework instrumentation by @alexmojaki in #917
Handle errors in OpenAI response by @alexmojaki in #910
Include domain in message for outgoing requests by @alexmojaki in #892
Handle mocks by calling to_dict on type by @alexmojaki in #897
to_dict on type by @alexmojaki in #897Handle missing shutdown and force_flush on NoOpLoggerProvider better by @alexmojaki in #895
Fix typing errors involving handle_internal_errors by @alexmojaki in #885
avoid BatchLogRecordProcessor use on pyodide/emscripten by @samuelcolvin in #873
BatchLogRecordProcessor use on pyodide/emscripten by @samuelcolvin in #873Set log level to warning instead of error for 4xx HTTPExceptions from FastAPI/Starlette by @alexmojaki in #858
excluded_urls typo in instrument_flask by @alexmojaki in #852Fixes for capturing httpx bodies by @alexmojaki in #842
Support OpenTelemetry 1.30.0 by @alexmojaki in #839
Prevent side effects when importing logfire by @alexmojaki in #835
Add logfire.logfire_info() by @samuelcolvin in #826
Support Pyodide by @samuelcolvin in #818
Add process runtime information by @Kludex in #811
Fix conflict with ddtrace futures patching by renaming fn parameter by @alexmojaki in #802
Prevent OTel from logging noisy traceback for handled requests exceptions by @alexmojaki in #796
Add capture_all to instrument_httpx by @Kludex in #780
BREAKING CHANGE: Removed capture_request_json_body, capture_request_text_body, capture_request_form_data, and capture_response_json_body parameters fr…
capture_request_json_body, capture_request_text_body, capture_request_form_data, and capture_response_json_body parameters from logfire.instrument_httpx(), replaced with capture_request_body capture_response_body by @Kludex in #769Other changes:
distributed_tracing argument to logfire.configure() and warn by default when trace context is extracted by @alexmojaki in #773urllib3 when requests is installed on logfire inspect by @Kludex in #744--ignore to logfire inspect by @Kludex in #748model_fields on the model class by @Viicos in #761Handle errors from sqlalchemy.inspect by @alexmojaki in #733
sqlalchemy.inspect by @alexmojaki in #733Add capture_request_text_body param to instrument_httpx by @alexmojaki in #722
Add capture_request_form_data param to instrument_httpx by @alexmojaki in #711
Capture httpx response JSON bodies by @alexmojaki in #700
Add capture_(request|response)_headers (#671) and capture_request_json_body (#682) to instrument_httpx by @Kludex
capture_(request|response)_headers (#671) and capture_request_json_body (#682) to instrument_httpx by @KludexFix erroneous when object is repeated in list by @alexmojaki in #664
<circular reference> when object is repeated in list by @alexmojaki in #664Add logfire.instrument_aws_lambda by @Kludex in #657
logfire.instrument_aws_lambda by @Kludex in #657Update the process.pid resource attribute after os.fork() by @alexmojaki in #647
Use exc_info in structlog processor by @alexmojaki in #641
Add instrument_sqlite3 by @Kludex in #634
instrument_sqlite3 by @Kludex in #634Add logfire.suppress_scopes method by @alexmojaki in #628
Allow new context argument of metric instrument methods to be passed positionally by @alexmojaki in #616
Support logfire.instrument without arguments by @Kludex in #607
Your coding agent can read these notes before it upgrades. Set up the MCP server →