View a markdown version of this page

Meilleures pratiques pour surveiller la diffusion des événements sur Amazon EventBridge - Amazon EventBridge

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Meilleures pratiques pour surveiller la diffusion des événements sur Amazon EventBridge

Pour garantir que la logique métier de vos applications pilotées par les événements s'exécute de manière fiable, il est essentiel de surveiller votre comportement en matière de diffusion d'événements. EventBridge fournit des mesures qui vous permettent de surveiller, de détecter et d'atténuer les problèmes à un stade précoce afin de garantir une diffusion fiable des événements. Ces métriques incluent :

  • Counter-based des mesures, telles queInvocationAttempts, RetryInvocationAttempts et SuccessfulInvocationAttemptsFailedInvocations, pour vous permettre d'observer la limitation des cibles et de calculer les taux d'erreur.

  • Latency-based des indicateurs, par exemple IngestionToInvocationSuccessLatency pour fournir des informations sur la livraison des événements et les retards.

Ces indicateurs vous permettent de surveiller l'état de santé de vos architectures pilotées par les événements et de comprendre et d'atténuer les problèmes de diffusion d'événements causés par des cibles sous-performantes, sous-dimensionnées ou ne répondant pas. Par exemple, une cible constamment sous-dimensionnée ou limitée peut entraîner un nombre excessif de tentatives, des retards dans la livraison des événements et des échecs de livraison permanents.

Nous vous recommandons de combiner plusieurs indicateurs pour obtenir une vue d'ensemble globale et de les suivre de près. La configuration d'alarmes et de tableaux de bord appropriés vous permet de résoudre rapidement les problèmes persistants.

Pour plus d'informations sur des mesures spécifiques, consultezEventBridge métriques.

Détecter les échecs de diffusion des événements

EventBridge inclut des mesures que vous pouvez configurer pour signaler les appels cibles, c'est-à-dire les tentatives de diffusion d'événements, par règle.

Nous vous recommandons de surveiller les indicateurs suivants au niveau des règles :

  • InvocationAttemptspour observer le nombre total de EventBridge tentatives d'appel de la cible, y compris les nouvelles tentatives de diffusion de l'événement.

  • SuccessfulInvocationAttemptspour le nombre de tentatives d'invocation au cours desquelles l'événement a été transmis EventBridge avec succès à la cible.

  • RetryInvocationAttemptspour le nombre de tentatives correspondant aux nouvelles tentatives de diffusion d'événements.

    Une augmentation de RetryInvocationAttempts peut être une indication précoce d'un objectif sous-dimensionné.

En outre, étant donné que l'augmentation du nombre de tentatives peut être le premier signe de problèmes de livraison, nous vous recommandons également de créer une métrique unique qui permet de suivre le pourcentage d'appels cibles réussis par rapport à toutes les invocations cibles. Par exemple, CloudWatch vous pouvez utiliser les mathématiques métriques pour créer une telle métrique, appeléeSuccessfulInvocationRate, à l'aide de la formule suivante :

SuccessfulInvocationRate = SuccessfulInvocationAttempts / InvocationAttempts

Ensuite, en fonction de vos besoins, vous pouvez configurer CloudWatch des alarmes pour créer des notifications lorsqu'un certain seuil est atteint.

Bien qu'une diminution occasionnelle SuccessfulInvocationRate due à des pics de trafic temporaires ou à des erreurs d'invocation puisse être considérée comme normale, une inadéquation constante indique une cible mal configurée et doit être corrigée dans le cadre du modèle de responsabilité partagée.

Pour plus d'informations sur les mathématiques métriques, consultez la section Utilisation d'expressions mathématiques avec CloudWatch des métriques dans le Guide de CloudWatch l'utilisateur Amazon.

Par défaut, EventBridge essaie de diffuser un événement pendant 24 heures et jusqu'à 185 fois. Après avoir EventBridge épuisé ces nouvelles tentatives, EventBridge soit supprime l'événement, soit l'envoie dans une file d'attente de lettres mortes si une telle file d'attente a été spécifiée. Pour plus d’informations, consultez Nouvelle tentative de diffusion de l'événement. Pour éviter de perdre des événements s'ils ne sont pas livrés, nous vous recommandons de configurer une file d'attente de lettres mortes pour chaque cible de règle. Pour plus d’informations, consultez Utilisation des files d’attente de lettres mortes.

Les événements qui EventBridge ne parviennent pas à la cible spécifiée sont signalés dans la FailedInvocations métrique et dans la InvocationsSentToDlq métrique si vous avez configuré une file d'attente de lettres mortes pour la cible. Si votre application reçoit un grand nombre de FailedInvocations InvocationsSentToDlq rapports, nous vous recommandons de vérifier si la cible est correctement dimensionnée et capable de recevoir le trafic donné.

Détecter les retards de livraison des événements

EventBridge fournit également une métrique qui vous permet d'observer la latence de bout en bout, c'est-à-dire le temps nécessaire entre l'ingestion de l'événement et sa livraison réussie à la cible. Cela peut être réalisé à l'aide de la IngestionToInvocationSuccessLatency métrique. Cette métrique met en évidence les effets des nouvelles tentatives et des retards de livraison, dus par exemple aux délais d'attente et à la lenteur des réponses des cibles. IngestionToInvocationSuccessLatencyinclut le temps nécessaire à la cible pour répondre avec succès à la livraison de l'événement. Cela vous permet de surveiller la latence de bout en bout entre EventBridge et votre cible, et de détecter les variations de performances et les dégradations des cibles, même en l'absence de limitation ou d'erreur de la cible.