maxAttempts. C’est la seule valeur qui signifie réellement routage.
Le log nomme la cause
Chacune de ces lignes est en WARN ou ERROR et n’a besoin d’aucun drapeau de debug.Deux choses à écarter avant d’éditer une règle
Un fournisseur est-il seulement bindé ?
Un fournisseur est-il seulement bindé ?
Un attrape-tout parfait pointant vers un fournisseur déconnecté ne livre rien et ressemble
exactement à un bug de routage.Répond en mots : « N vendor(s) configured, none bound — nothing can be sent yet. »
Un filtre manque-t-il ou est-il désactivé ?
Un filtre manque-t-il ou est-il désactivé ?
Une règle qui en référence un est entièrement ignorée plutôt que chargée avec moins de conditions
— parce qu’abandonner des conditions élargirait silencieusement la règle.Cherchez
Skipping … filter '…' is missing or disabled. Si cela a vidé la table default, toute la
configuration de routage est refusée et vous êtes dans le cas ERROR ci-dessus.Pourquoi une règle n’a pas correspondu
Six causes, et les deux dernières comptent pour la plupart des surprises :- Les règles sont évaluées de haut en bas ; une table NORMAL s’arrête à la première correspondance.
- Le repli doit être à la fin. Un attrape-tout au-dessus d’autres règles rend tout ce qui le suit inaccessible — la page de routage du panneau avertit dans les deux cas.
- Les noms d’attribut doivent correspondre à ceux de la référence de routage.
- Les comparaisons de chaînes distinguent la casse sauf si on utilise
equalsIgnoreCase. startsWithcompare du texte littéral. Une expression régulière qu’on y écrit ne peut jamais être vraie — utilisezmatches. Le panneau avertit ; un fichier édité à la main non.- Un champ non défini ne correspond à aucun opérateur positif, à l’exception de
isNull.product:equals:premiumne correspond pas à un message ne portant aucun produit — maisproduct:!equals:premiumle fait.
Tracer un message
RéglezoutSms.routing.trace sur un seul numéro de série de message ou identifiant de compte. Chaque
règle contre laquelle ce message est testé journalise alors quelle condition a échoué et ce que le
message contenait réellement :
Les deux nombres de file
Voir aussi
Comment fonctionne le routage
Tables, règles et ordre de résolution.
Rejets du fournisseur
Quand le fournisseur est bindé et refuse chaque submit.