Prerequisites
Required:- Docker 20.10 or higher
- Docker Compose 2.0 or higher
- 4GB RAM minimum
- Ports available: 3000, 8081, 9411
- Anthropic API key (for replay with Claude models)
- OpenAI API key (for replay with GPT models)
API keys are only required for the replay feature. Core functionality (tracing, cost tracking, alerting) works without API keys.
Installation
Step 1: Clone Repository
Step 2: Start Services
Step 3: Verify Services
Check all services are running:Up (healthy) status.
Step 4: Access Dashboard
Open your browser and navigate to:Send Your First Trace
Now let’s send a test trace to verify everything works.Option 1: Using the SDK (Recommended)
Install SDK:test-trace.ts:
- Service name:
quickstart-test - Endpoint:
hello-claude - Model:
claude-sonnet-4-5 - Automatic cost calculation
- Token counts (prompt, completion)
- Latency measurement
Option 2: Using cURL
Send a trace directly via HTTP:Self-hosted Lumina runs without authentication by default. No API key required.
View Your Trace
- Open http://localhost:3000/traces
- You should see your test trace
- Click on the trace to view details:
- Full prompt and response
- Token breakdown
- Cost calculation
- Latency timeline
- Custom metadata

Next Steps
Instrument Your App
Add tracing to your production application
Multi-Span Tracing
Track complex workflows like RAG pipelines
Configure Alerts
Get notified of cost spikes and quality drops
Deploy to Production
Production deployment with Kubernetes
Optional Configuration
Add LLM API Keys
To use the replay feature, add API keys:Customize Ports
Editinfra/docker/.env:
Configure Retention
Set trace retention period:Troubleshooting
Port Already in Use
Error:bind: address already in use
Solution: Change ports in .env or stop conflicting service:
Services Not Starting
Error: Container exits immediately Solution 1: Check Docker resources Docker Desktop → Settings → Resources:- Memory: Set to at least 4GB
- Disk: Ensure 10GB+ available
Database Connection Failed
Error:connection refused or could not connect to server
Solution: Wait for PostgreSQL to be fully ready:
Dashboard Shows “Failed to Fetch”
Error: Dashboard loads but shows error when fetching data Solution 1: Verify API is runningTraces Not Appearing
Issue: Sent trace but not visible in dashboard Solution 1: Check ingestion logsAdvanced Options
Run in Development Mode
For active development with hot reload:View Real-Time Logs
Reset Database
Stopping Lumina
postgres-data— All traces and metadataredis-data— Cached semantic scoresnats-data— Message queue state
What’s Next?
You now have Lumina running locally with your first trace. Next steps:- Instrument your application — Add tracing to your production app
- Learn multi-span tracing — Track complex workflows
- Configure alerts — Get notified of issues
- Deploy to production — Kubernetes deployment
Need Help?
- Docs: docs.uselumina.io
- GitHub Issues: Report bugs
- Discussions: Ask questions
- Email: support@uselumina.io