Français
File d'attente des événements
Chaque événement réellement capturé — ainsi que chaque charge utile de test de l'Aperçu du message — est livré de manière asynchrone via une file d'attente, et non de manière synchrone dans la transaction qui l'a déclenché. Ouvrez-la depuis l'action File d'attente des événements de Configuration.
Chaque entrée affiche :
- Nom de la table / Type d'événement — la table concernée et laquelle des opérations insertion/modification/renommage/suppression l'a produite.
- Statut — En attente (en attente d'envoi, ou en attente d'un délai de nouvelle tentative), En cours de traitement (en cours d'envoi), Envoyé (livré — supprimé par le balayage récurrent environ 15 minutes plus tard, afin que la liste reste centrée sur ce qui est encore en cours ou a échoué ; voir Fonctionnement de la livraison), ou Erreur (abandonné — voir Lecture des messages d'erreur ci-dessous).
- Modifié le — le moment où l'enregistrement sous-jacent a réellement été modifié.
- Traitement démarré le — le moment où cette entrée a été prise en charge pour la dernière fois en vue de son envoi.
- Nombre de tentatives / Nouvelle tentative après — le nombre d'échecs pouvant être retentés que cette entrée a connus, et le moment le plus proche auquel elle sera retentée.
- Message d'erreur — la raison pour laquelle la dernière tentative a échoué, une fois qu'elle a échoué. Simple texte brut — contrairement à un échec de Send Test Payload, ce n'est jamais un lien cliquable vers Configuration ou la Gestion des extensions.
Pour RabbitMQ en particulier, Envoyé signifie uniquement que le message a été correctement transmis à l'API de gestion RabbitMQ — pas qu'il a atteint une file d'attente. La réponse de RabbitMQ elle-même indique si le message a effectivement été routé (c'est-à-dire si l'exchange disposait d'une liaison de file d'attente correspondante à ce moment-là), mais Event Bridge considère une transmission réussie comme une livraison dans tous les cas — un message non routé affiche quand même Envoyé, et non Erreur, car le routage relève de la configuration du courtier, et non d'un échec d'Event Bridge. Si une table et un point de terminaison sont correctement configurés mais que rien n'arrive côté RabbitMQ, vérifiez les liaisons de file d'attente de l'exchange et la clé de routage avant de supposer qu'Event Bridge n'envoie rien.
Fonctionnement de la livraison
Business Central exécute une tâche en arrière-plan par table source qui vide sa file d'attente dès qu'un événement y est ajouté, de sorte qu'il n'y a aucune attente perceptible par l'utilisateur et rien à configurer par table. Un échec qui semble transitoire (une erreur réseau, ou une réponse HTTP 5xx, 408 ou 429) est automatiquement retenté, en respectant l'en-tête Retry-After du point de terminaison s'il en envoie un, ou après un délai par défaut d'1 minute dans le cas contraire — jusqu'à Max Retry Attempts avant que l'entrée ne soit marquée Erreur. Tout autre échec (par exemple un 4xx autre que 408/429, un identifiant incorrect, une valeur manquante dans Configuration) est immédiatement marqué Erreur sans nouvelle tentative, puisque cela ne résoudrait pas le problème.
En complément de cette tâche par table, exécutez une fois l'action Schedule Automatic Retries dans Configuration — elle crée une entrée de file d'attente de tâches récurrente (toutes les 5 minutes) qui réinitialise toute entrée bloquée en En cours de traitement depuis plus de 15 minutes (par exemple après l'interruption d'une session en plein envoi), reprend toute table dont la tâche en arrière-plan a été perdue, et supprime les entrées Envoyé une fois qu'elles ont environ 15 minutes, afin que la file d'attente ne grossisse pas indéfiniment. Si elle n'est pas planifiée, aucun de ces nettoyages ne s'exécute automatiquement — les entrées continuent d'être envoyées, mais la récupération des entrées bloquées/perdues et la suppression des entrées terminées ne se produisent que lorsque cette tâche s'exécute.
Actions
- Réessayer les entrées en échec — réinitialise chaque entrée Erreur à En attente (et son nombre de tentatives à 0) afin qu'elle soit retentée. Utilisez cette action une fois que vous avez réellement résolu le problème — retenter sans corriger la cause échouera simplement de la même manière.
- Vider les entrées en échec — supprime définitivement chaque entrée Erreur sans les renvoyer. Utilisez cette action pour éliminer les échecs que vous avez décidé de ne pas poursuivre.
- Réinitialiser les tâches bloquées — annule la tâche en arrière-plan suivie pour chaque table source et en planifie une nouvelle pour toute table comportant des entrées en attente. Utilisez cette action si des entrées restent En attente sans jamais passer à En cours de traitement ou Envoyé.
- Vider la file d'attente — supprime définitivement toutes les entrées, quel que soit leur statut, et annule toutes les tâches en arrière-plan suivies. Les événements déjà capturés sont perdus et ne peuvent pas être renvoyés — cela n'affecte que ce qui est actuellement en file d'attente, pas les événements futurs.
Qui peut utiliser cette fonctionnalité
La File d'attente des événements nécessite le même accès Event Bridge Admin que celui requis pour Configuration et Tables d'événements — voir Licence et accès.