Skip to content

Add error handling and logging to startup#66

Open
railway-app[bot] wants to merge 1 commit into
mainfrom
railway/code-change-dmI00s
Open

Add error handling and logging to startup#66
railway-app[bot] wants to merge 1 commit into
mainfrom
railway/code-change-dmI00s

Conversation

@railway-app

@railway-app railway-app Bot commented Jul 22, 2026

Copy link
Copy Markdown

Problem

The forkcast backend crashes silently during startup, failing healthcheck. The lifespan function in backend/api/main.py performs several async initialization steps (database, vector store, LangGraph checkpointer, LangFuse, Anthropic client, graph creation, background tasks) with no error handling, so when one fails the process exits before binding to port 8000, leaving only "Starting Forkcast 🍴" in the logs with no indication of the actual cause.

Solution

Wrapped each startup step in try-except blocks that log the exception message, type, and traceback via structlog before re-raising as a RuntimeError with a clear description of which step failed (database, vector store, checkpointer, Anthropic client, graph, or background tasks). LangFuse initialization is now non-blocking: failures are logged as a warning and fall back to a null handler instead of crashing the app, matching its existing fallback behavior. This will surface the exact failing step in deploy logs so the underlying issue (e.g. missing env var, unreachable database) can be diagnosed and fixed.

Changes

  • Modified backend/api/main.py

Generated by Railway

@vercel

vercel Bot commented Jul 22, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
forkcast-app Ready Ready Preview, Comment Jul 22, 2026 2:10pm
forkcast-landing Ready Ready Preview, Comment Jul 22, 2026 2:10pm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants