Skip to main content

Health Checks

Verify your deployment is healthy:

Docker Compose Issues

Port 5560 already in use

Another process is using port 5560. Find and stop it:

Containers keep restarting

Check logs for the failing container:
Common causes:
  • PostgreSQL not ready before app starts (health checks should handle this)
  • Missing or invalid .env file
  • Insufficient Docker memory (increase to 8+ GB in Docker Desktop settings)

Slow startup

First startup is slower because:
  • Docker pulls all images
  • PostgreSQL runs initial migrations
  • OpenSearch initializes its cluster
Subsequent starts are faster. If it remains slow, check Docker resource allocation.

Kubernetes, Helm Issues

Pods stuck in CrashLoopBackOff

Pods stuck in Pending

PVC stuck in Pending

Ensure your cluster has a default StorageClass:
If not, set one in your values:

Ingress not routing traffic

Ensure app.http.baseHost and app.http.publicUrl match the Ingress host.

Istio, Service Mesh

CronJob pods may hang after completion because the Istio sidecar keeps the pod alive. Fix: disable sidecar injection for CronJobs:

ClickHouse Issues

ClickHouse OOM kills

Increase ClickHouse memory:
The subchart auto-tunes internal memory limits based on this value.

ClickHouse connection errors

Cold storage not working

Verify S3 credentials and bucket access:
Ensure the service account has S3 access (IRSA) or static credentials are configured correctly.

PostgreSQL Issues

Migration failures on startup

If Prisma migrations fail, the app pod will crash. Check logs:
To skip migrations temporarily (for debugging):
Only skip migrations for debugging. Running with pending migrations can cause application errors.

Connection refused

Verify the connection string:

Authentication Issues

SSO callback URL mismatch

The callback URL configured in your identity provider must exactly match:
Check that app.http.publicUrl matches your actual domain (including https://).

”Email already exists” during SSO migration

This happens when a user already has an email/password account. Follow the SSO migration steps to link existing accounts.

Sessions expire too quickly

NEXTAUTH_SECRET may have changed between deployments. Ensure it’s stored persistently in a Kubernetes Secret, not auto-generated.

Debugging Tools

Grafana Dashboards

LangWatch ships with off-the-shelf Grafana dashboards for monitoring the platform, including trace throughput, worker queue depth, ClickHouse performance, and error rates. See Observability & Monitoring for setup.

Skynet (Internal Event Debugger)

LangWatch includes Skynet, an internal event debugging tool that lets you inspect the event sourcing pipeline in real-time, view individual events, trace processing steps, and diagnose pipeline issues.

FAQ

How much disk space does ClickHouse need?

Roughly 1 KB per span (compressed). See Sizing & Scaling for detailed estimates.

Can I use an existing PostgreSQL, Redis?

Yes. Use the external database overlays:
See Kubernetes (Helm) for full instructions.

Can I run without LangEvals or NLP?

Yes. These services are optional. If you don’t need built-in evaluators or NLP features, you can scale them to zero:

How do I disable telemetry?

Or set DISABLE_USAGE_STATS=true.

What ports need to be open?

Only port 443 (HTTPS) for the Ingress/Load Balancer. All other communication is internal to the cluster. See Security for the full port matrix.

Can I run LangWatch in an air-gapped environment?

Yes. Mirror the Docker images to your private registry and configure the Helm chart to pull from there. See Docker Images.

How do I check the LangWatch version?