3.5 KiB
3.5 KiB
🐛 Guide de résolution des erreurs d'envoi d'emails groupés
Erreur : "Missing '<'" - CORRIGÉ ✅
Problème identifié :
L'erreur "Missing '<'" était causée par un mauvais formatage de l'adresse email source dans l'API SES.
Solution appliquée :
// Avant (incorrect)
Source: `Espace Paie Odentas <${fromEmail}>`,
// Après (corrigé)
let sourceEmail = fromEmail;
if (fromEmail && !fromEmail.includes('<')) {
sourceEmail = `Espace Paie Odentas <${fromEmail}>`;
} else {
sourceEmail = fromEmail;
}
Source: sourceEmail,
📋 Autres erreurs courantes et solutions
1. Adresse email invalide
- Cause : Format d'email incorrect (manque @, domaine invalide, espaces)
- Solution : Validation ajoutée côté client et serveur
- Prévention : Seuls les emails confirmés et valides sont affichés
2. Quota journalier dépassé
- Cause : Limite AWS SES atteinte (200 emails/jour par défaut)
- Solution : Attendre 24h ou demander une augmentation de quota
- Prévention : Surveiller le nombre d'emails envoyés
3. Limite de débit dépassée
- Cause : Trop d'emails envoyés simultanément (limite SES : 14/seconde)
- Solution : L'API limite automatiquement à 12 emails par lot avec pause de 1s
- Prévention : Ne pas cliquer plusieurs fois sur "Envoyer"
Performance optimisée :
- Débit : 12 emails par seconde (sous la limite de 14/sec)
- Throughput : ~720 emails par minute
- Sécurité : Marge de 2 emails/sec pour éviter les dépassements
4. Configuration SES manquante
- Cause : Variable d'environnement AWS_SES_FROM non définie
- Solution : Vérifier la configuration des variables d'environnement
- Prévention : Test automatique au démarrage
🔧 Améliorations apportées
Validation côté client :
const isValidEmail = user.email &&
user.email.includes('@') &&
user.email.includes('.') &&
user.email.length > 5 &&
!user.email.includes(' ');
Gestion d'erreurs améliorée :
- Messages d'erreur plus clairs et spécifiques
- Distinction entre les types d'erreurs
- Conseils contextuels pour résolution
Interface utilisateur :
- Warning détaillé en cas d'échecs
- Affichage des statuts en temps réel
- Possibilité d'annulation en cours d'envoi
📊 Monitoring et logs
Logs automatiques :
- Nombre total d'emails traités
- Taux de succès/échec
- Détails des erreurs par email
- Horodatage précis
Traçabilité :
- Chaque envoi est enregistré en base
- Possibilité de retrouver les échecs
- Statistiques d'utilisation
🚀 Bonnes pratiques
-
Avant l'envoi :
- Vérifier le contenu HTML (aperçu)
- Tester avec 1-2 destinataires d'abord
- S'assurer que le sujet est clair
-
Pendant l'envoi :
- Ne pas fermer le navigateur
- Surveiller les erreurs en temps réel
- Utiliser "Annuler" si nécessaire
-
Après l'envoi :
- Vérifier les statistiques finales
- Noter les emails en échec pour retry
- Contrôler la réception sur quelques comptes
⚡ Limites techniques
- Maximum : 100 destinataires par envoi
- Débit : 12 emails simultanés par lot (limite SES : 14/sec)
- Performance : ~720 emails/minute
- Taille : Contenu HTML < 10MB
- Quota : Selon configuration AWS SES
🆘 En cas de problème persistant
- Vérifier les logs AWS SES
- Contrôler les variables d'environnement
- Tester avec un email simple
- Contacter l'administrateur système