Saltar a contenido

Problemas Comunes

Soluciones a problemas frecuentes en el Sistema A3.

Error: "Application Error"

Síntoma: Heroku muestra "Application Error"

Solución:

# Ver logs
heroku logs --tail --app aterceros

# Restart
heroku restart --app aterceros

# Verificar dynos
heroku ps --app aterceros

Error: "Database connection failed"

Causas comunes: - DB en mantenimiento - Conexiones agotadas - Credentials incorrectos

Solución:

# Verificar BD
heroku pg:info --app aterceros

# Restart connections
heroku pg:killall --app aterceros

# Verificar DATABASE_URL
heroku config:get DATABASE_URL --app aterceros

Error: "Timeout"

Síntoma: Requests tardan >30s

Solución: 1. Identificar query lenta con logs 2. Agregar índices faltantes 3. Optimizar con select_related/prefetch_related 4. Mover a background task si aplica

Error: "No space left on device"

Solución:

# Limpiar BD
heroku run python manage.py clearsessions --app aterceros

# Vacuum
heroku pg:psql --app aterceros -c "VACUUM FULL;"

# Upgrade plan si es necesario

Error: "CSRF verification failed"

Causas: - Cookie bloqueada - Token expirado - Dominio incorrecto

Solución: 1. Verificar CSRF_TRUSTED_ORIGINS en settings 2. Limpiar cookies del navegador 3. Verificar que el request incluya el token

Error: "500 Internal Server Error"

Solución: 1. Revisar logs: heroku logs --tail 2. Reproducir localmente 3. Verificar migraciones: python manage.py showmigrations 4. Verificar config vars

Error SAP API: "Connection timeout"

Solución: 1. Verificar que SAP API esté disponible 2. Aumentar timeout en settings 3. Implementar retry logic 4. Usar circuit breaker pattern

Performance Lento

Diagnóstico:

from django.db import connection
print(len(connection.queries))  # Número de queries

for q in connection.queries:
    print(q['time'], q['sql'][:100])

Soluciones: - Agregar select_related() para ForeignKey - Agregar prefetch_related() para M2M - Crear índices en campos de filtro - Usar caché para queries frecuentes

Migraciones Conflictivas

Síntoma: Con flicting migrations detected

Solución:

# Ver conflictos
python manage.py showmigrations

# Merge migraciones
python manage.py makemigrations --merge

S3 Upload Fails

Causas: - Credentials incorrectos - Permissions faltantes - Archivo muy grande

Solución: 1. Verificar AWS credentials 2. Verificar permisos del bucket 3. Aumentar límite de tamaño 4. Usar multipart upload para archivos grandes

Web Push No Funciona

Solución: 1. Verificar VAPID keys 2. Verificar que el navegador soporte Web Push 3. Verificar permisos del navegador 4. Re-suscribir el usuario

Login No Funciona

Causas comunes: - Contraseña incorrecta - Usuario inactivo - Sesión expirada

Solución: 1. Verificar en admin que usuario esté activo 2. Reset password si es necesario 3. Limpiar sesiones: python manage.py clearsessions

Cómo Reportar Problemas

Al reportar un issue:

  1. Descripción clara del problema
  2. Pasos para reproducir
  3. Comportamiento esperado vs actual
  4. Screenshots (si aplica)
  5. Logs relevantes
  6. Entorno (producción/staging/local)

Si el problema persiste, contactar a sistemas con logs completos.