diff --git a/app/backend/main.py b/app/backend/main.py index 3264f4ac..77cc1fd1 100644 --- a/app/backend/main.py +++ b/app/backend/main.py @@ -52,6 +52,15 @@ def convert_messages_to_history( load_dotenv() +# Configure logfire (only sends data if LOGFIRE_TOKEN is present) +try: + import logfire + + logfire.configure(send_to_logfire="if-token-present", console=False) + logfire.instrument_pydantic_ai() +except Exception: + pass + logging.basicConfig( level=logging.INFO, format="%(asctime)s - %(name)s - %(levelname)s - %(message)s" ) diff --git a/app/backend/pyproject.toml b/app/backend/pyproject.toml index 4c95a415..0fbbdd04 100644 --- a/app/backend/pyproject.toml +++ b/app/backend/pyproject.toml @@ -9,6 +9,7 @@ dependencies = [ "pydantic-ai-slim[ag-ui,anthropic,openai]>=1.39.0", "python-dotenv>=1.2.1", "haiku.rag-slim[agui]>=0.23.1", + "logfire[pydantic-ai]>=3.17.0", ] [dependency-groups] diff --git a/app/docker-compose.dev.yml b/app/docker-compose.dev.yml index e569581b..e4fa47eb 100644 --- a/app/docker-compose.dev.yml +++ b/app/docker-compose.dev.yml @@ -14,6 +14,7 @@ services: - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-} - OPENAI_API_KEY=${OPENAI_API_KEY:-} - OLLAMA_BASE_URL=${OLLAMA_BASE_URL:-http://host.docker.internal:11434} + - LOGFIRE_TOKEN=${LOGFIRE_TOKEN:-} volumes: - ${DB_PATH:-./data/haiku.rag.lancedb}:/data - ./backend:/app/src:ro diff --git a/app/docker-compose.yml b/app/docker-compose.yml index b3d46022..7760c550 100644 --- a/app/docker-compose.yml +++ b/app/docker-compose.yml @@ -10,6 +10,7 @@ services: - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-} - OPENAI_API_KEY=${OPENAI_API_KEY:-} - OLLAMA_BASE_URL=${OLLAMA_BASE_URL:-http://host.docker.internal:11434} + - LOGFIRE_TOKEN=${LOGFIRE_TOKEN:-} volumes: - ${DB_PATH:-./data/haiku.rag.lancedb}:/data extra_hosts: