Skip to main content

The best Python observability tool! 🪵🔥

Project description

Pydantic Logfire — Uncomplicated Observability

CI codecov pypi license versions

See the documentation for more information.

Feel free to report issues and ask any questions about Logfire in this repository!

This repo contains the Python SDK for logfire and documentation; the server application for recording and displaying data is closed source.

Using Logfire

This is a very brief overview of how to use Logfire, the documentation has much more detail.

Install

pip install logfire

(learn more)

Authenticate

logfire auth

(learn more)

Manual tracing

Here's a simple manual tracing (aka logging) example:

import logfire
from datetime import date

logfire.info('Hello, {name}!', name='world')

with logfire.span('Asking the user their {question}', question='age'):
    user_input = input('How old are you [YYYY-mm-dd]? ')
    dob = date.fromisoformat(user_input)
    logfire.debug('{dob=} {age=!r}', dob=dob, age=date.today() - dob)

(learn more)

Integration

Or you can also avoid manual instrumentation and instead integrate with lots of popular packages, here's an example of integrating with FastAPI:

import logfire
from pydantic import BaseModel
from fastapi import FastAPI

app = FastAPI()

logfire.configure()
logfire.instrument_fastapi(app)
# next, instrument your database connector, http library etc. and add the logging handler

class User(BaseModel):
    name: str
    country_code: str

@app.post('/')
async def add_user(user: User):
    # we would store the user here
    return {'message': f'{user.name} added'}

(learn more)

Logfire gives you a view into how your code is running like this:

Logfire screenshot

Contributing

We'd love anyone interested to contribute to the Logfire SDK and documentation, see the contributing guide.

Reporting a Security Vulnerability

See our security policy.

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

logfire-0.28.0.tar.gz (24.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

logfire-0.28.0-py2.py3-none-any.whl (119.1 kB view details)

Uploaded Python 2Python 3

File details

Details for the file logfire-0.28.0.tar.gz.

File metadata

  • Download URL: logfire-0.28.0.tar.gz
  • Upload date:
  • Size: 24.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for logfire-0.28.0.tar.gz
Algorithm Hash digest
SHA256 70ddd5e2246e37265183b8aa77c522e0bf1b1446dfca526ab30481c5c8e3b331
MD5 e97093cf5dacb61bf1ebe6dde27bce74
BLAKE2b-256 26d7f24eee465126236ea4c01f523d84036bc4122460ebbc50f214ee0f259e9f

See more details on using hashes here.

File details

Details for the file logfire-0.28.0-py2.py3-none-any.whl.

File metadata

  • Download URL: logfire-0.28.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 119.1 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for logfire-0.28.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 0fd7022c6449407e8e18fe6986f129c243fa7cb1582397848174bac04d92ef8b
MD5 1fea78cc33115353b985decaa9c1f27e
BLAKE2b-256 19ab65378cc22f04e1ff1c6cefc63a844af4e81aca06226dfa7f8cd0d4a43178

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page