Troubleshooting

Common issues and solutions

This guide covers common issues when running the Conserver and how to resolve them.

Diagnostic Commands

Check System Health

# Redis connectivity
redis-cli ping
# Expected: PONG

# API health
curl -H "x-conserver-api-token: $TOKEN" http://localhost:8000/api/config

# Queue status
redis-cli LLEN incoming_calls
redis-cli LLEN incoming_calls:dlq

View Logs

# Docker Compose logs
docker compose logs -f conserver-api
docker compose logs -f conserver-worker

# Filter for errors
docker compose logs conserver-worker 2>&1 | grep -i error

Connection Issues

Redis Connection Failed

Symptoms:

  • Workers won't start

  • "Connection refused" errors

  • API returns 500 errors

Diagnosis:

Solutions:

  1. Verify Redis URL:

  2. Check Docker networking:

  3. Redis memory full:

API Authentication Failed

Symptoms:

  • 403 Forbidden responses

  • "Invalid API Key" errors

Solutions:

  1. Check token configuration:

  2. Check header name:

  3. For external ingress, check ingress_auth config:


Processing Issues

vCons Not Being Processed

Symptoms:

  • Queue depth keeps growing

  • No worker activity in logs

  • vCons stuck in ingress list

Diagnosis:

Solutions:

  1. Chain not enabled:

  2. Ingress list mismatch:

  3. Workers crashed:

  4. Configuration not loaded:

High DLQ Count

Symptoms:

  • vCons accumulating in dead letter queue

  • Processing errors in logs

Diagnosis:

Solutions:

  1. Identify the failing link:

    • Check logs for which link is failing

    • Look for exceptions and stack traces

  2. Common link failures:

    API key missing/invalid:

    External service down:

    Timeout:

  3. Reprocess after fixing:

Symptoms:

  • "Processing timeout" errors

  • vCons moving to DLQ after timeout period

Solutions:

  1. Increase chain timeout:

  2. Optimize processing:

    • Use faster models

    • Skip unnecessary processing steps

    • Add sampling to process fewer vCons

  3. Check external API performance:


Transcription Issues

No Transcription Generated

Symptoms:

  • vCon has no transcript analysis

  • Transcription link completes but adds nothing

Diagnosis:

Solutions:

  1. Check dialog type:

  2. Check duration requirement:

  3. Check audio URL is accessible:

  4. Check API key:

Transcription Already Exists

Symptoms:

  • "Dialog already transcribed" in logs

  • Link skipping dialogs

Explanation: Links skip processing if analysis already exists (idempotency).

If you need to re-transcribe:

  1. Delete the vCon and re-submit

  2. Or create a new link with different analysis_type


Storage Issues

Storage Write Failed

Symptoms:

  • "Failed to save" errors

  • vCon not appearing in storage backend

Diagnosis:

Solutions:

  1. Check credentials:

  2. Check network connectivity:

  3. Check permissions:

    • Database user has write permissions

    • S3 IAM role allows PutObject

vCon Not Found

Symptoms:

  • 404 when fetching vCon

  • "vCon not found" errors

Diagnosis:

Solutions:

  1. vCon expired from Redis:

    • Check VCON_REDIS_EXPIRY setting

    • vCon should be auto-fetched from storage if configured

  2. vCon never stored:

    • Check chain has storage backends configured

    • Check storage write didn't fail

  3. Wrong UUID format:

    • Ensure UUID includes hyphens

    • Check for typos


Configuration Issues

Configuration Not Loading

Symptoms:

  • Changes to config.yml not taking effect

  • Wrong settings being used

Solutions:

  1. Check config file path:

  2. Validate YAML syntax:

  3. Restart workers:

  4. Use API to update:

Import/Module Not Found

Symptoms:

  • "ModuleNotFoundError" in logs

  • Dynamic imports failing

Solutions:

  1. Check imports section:

  2. Check pip_name format:

  3. Check network access:

    • Container can reach PyPI/GitHub

    • No firewall blocking


Performance Issues

Slow Processing

Symptoms:

  • High processing times

  • Queue backing up

Solutions:

  1. Scale workers:

  2. Use sampling:

  3. Use faster models:

  4. Skip unnecessary links:

Memory Issues

Symptoms:

  • OOM errors

  • Container restarts

Solutions:

  1. Increase container memory:

  2. Configure Redis maxmemory:

  3. Use diet link to reduce vCon size:


Getting Help

If you can't resolve an issue:

  1. Check logs carefully - Most errors have clear messages

  2. Search GitHub issues - Someone may have had the same problem

  3. Create a GitHub issue with:

    • Conserver version

    • Configuration (sanitized)

    • Error messages

    • Steps to reproduce

Last updated

Was this helpful?