Skip to main content

Troubleshooting

Guide de résolution des problèmes courants.


🐛 Problèmes Courants

1. Workflow ne démarre pas

Symptômes :

  • Workflow reste en status "pending"
  • Aucune exécution visible

Causes possibles :

  • Temporal non connecté
  • Task queue incorrecte
  • Worker non démarré

Solutions :

# Vérifier Temporal
curl http://localhost:8233/api/v1/namespaces

# Vérifier les workers
docker ps | grep igon7

# Vérifier les logs
docker logs igon7-worker

2. Agent non trouvé

Symptômes :

  • Erreur "Agent not found"
  • Routing échoue

Causes possibles :

  • Agent non enregistré
  • Agent crashed
  • Network partition

Solutions :

# Lister les agents
curl http://localhost:8080/agents

# Réenregistrer l'agent
curl -X POST http://localhost:8080/agents/register \
-d '{"id": "my-agent", "type": "custom"}'

# Redémarrer l'agent
deno task restart

3. Erreurs de connexion Database

Symptômes :

  • "Connection refused"
  • "Too many connections"

Causes possibles :

  • PostgreSQL non démarré
  • Pool de connexions saturé
  • Credentials incorrects

Solutions :

# Vérifier PostgreSQL
docker ps | grep postgres

# Vérifier les connexions
psql -c "SELECT count(*) FROM pg_stat_activity;"

# Augmenter le pool
# .env: DATABASE_POOL_MAX=50

4. Memory Leak

Symptômes :

  • Mémoire augmente continuellement
  • Ralentissement progressif

Causes possibles :

  • Cache non limité
  • Event listeners non nettoyés
  • Objects non garbage collected

Solutions :

// Limiter le cache
const cache = new LRUCache({
max: 1000,
ttl: 3600000,
});

// Nettoyer les listeners
listener.removeAllListeners();

// Profiler
deno run --prof main.ts

5. Timeout d'exécution

Symptômes :

  • "Task timed out"
  • Workflow échoue après timeout

Causes possibles :

  • Tâche trop longue
  • Timeout trop court
  • Resource starvation

Solutions :

// Augmenter le timeout
const workflow = new WorkflowBuilder('with-timeout')
.addNode('long-task', longTask, {
timeout: 300000, // 5 minutes
})
.build();

// Ou optimiser la tâche

🛠️ Outils de Diagnostic

Logs

# Logs Nexus
docker logs genesis-nexus

# Logs igon7
docker logs igon7-engine

# Logs Temporal
docker logs temporal

Métriques

# Prometheus
curl http://localhost:9090/metrics

# Grafana
http://localhost:3000

Tracing

# Jaeger
http://localhost:16686

# Tempo
http://localhost:3200

✅ Checklist de Diagnostic

  • Vérifier les logs d'erreur
  • Vérifier les métriques (CPU, Memory)
  • Vérifier la connectivité (ping, curl)
  • Vérifier les configurations (.env)
  • Redémarrer les services
  • Vérifier les versions (compatibilité)

Version : 1.0.0
Niveau : Avancé