Comment créer des alarmes Cloudwatch pour une table DynamoDB sur AWS

Pour surveiller les tables DynamoDB, les données métriques sont envoyées automatiquement à CloudWatch. Voici les métriques agrégées à intervalles d’une minute pour les tables DynamoDB.

  1. ConditionalCheckFailedRequests: Cela renvoie le nombre de tentatives échouées pour effectuer des écritures conditionnelles.
  2. ConsumedReadCapacityUnits: Cela renvoie le nombre d’unités de capacité de lecture consommées pour suivre la quantité de débit provisionné utilisée sur la période spécifiée.
  3. ConsumedWriteCapacityUnits: Il s’agit du nombre d’unités de capacité d’écriture consommées pour suivre l’utilisation du débit provisionné sur la période spécifiée.
  4. ReadThrottleEvents: Cela donne le nombre de demandes à DynamoDB qui dépassent les unités de capacité de lecture provisionnées pour une table.
  5. ReturnedBytes: Cela donne le nombre d’octets retournés par les opérations GetRecords pendant la période spécifiée.
  6. ReturnedItemCount: Renvoie le nombre d’éléments retournés par les opérations Query, Scan ou ExecuteStatement pendant la période spécifiée.
  7. ReturnedRecordsCount: Il s’agit du nombre d’enregistrements de flux pendant la période spécifiée renvoyés par les opérations GetRecords.
  8. SuccessfulRequestLatency: Il s’agit du nombre de requêtes réussies vers Amazon DynamoDB Streams ou DynamoDB pendant la période spécifiée.
  9. SystemErrors: Donne le nombre de demandes adressées à Amazon DynamoDB Streams ou DynamoDB pendant la période spécifiée qui génèrent un code d’état HTTP 500.
  10. TimeToLiveDeletedItemCount: Cela donne le nombre d’éléments supprimés par Time to Live pendant la période spécifiée pour t’aider à surveiller le taux de suppression de Time to Live sur ta table.
  11. ThrottledRequests: Cela donne le nombre de demandes adressées à DynamoDB qui dépassent les limites de débit prévues.
  12. TransactionConflict: Cela donne le nombre de demandes rejetées au niveau des articles en raison de conflits transactionnels.
  13. UserErrors: Cela donne le nombre de demandes adressées à Amazon DynamoDB Streams ou DynamoDB pendant la période spécifiée qui génèrent un code d’état HTTP 400.
  14. WriteThrottleEvents: Cela donne le nombre de demandes adressées à DynamoDB qui dépassent les unités de capacité d’écriture provisionnées pour une table.

Il existe d’autres métriques avec une granularité d’agrégation à cinq minutes. Pour en savoir plus sur les métriques disponibles pour la table DynamoDB, consulte la documentation officielle ici.

Dans cet article, nous allons créer une alarme pour une table DynamoDB afin de surveiller « ConsumedWriteCapacityUnits » et envoyer une notification au sujet SNS. Avant de poursuivre, nous supposons que tu connais bien la table DynamoDB et les sujets SNS. Nous supposons également que tu as au moins une table DynamoDB et un sujet SNS.

Pré-requis

  1. Compte AWS (Crée-le si tu n’en as pas).
  2. Table DynamoDB (clique ici pour apprendre à créer une table DynamoDB avec Terraform).
  3. Sujet SNS (clique ici pour apprendre à créer un sujet SNS à l’aide de Cloudformation).

Que ferons-nous ?

  1. Connecte-toi à AWS.
  2. Crée une alarme pour la table DynamoDB existante.

Connecte-toi à AWS

Clique icipour aller sur la page de connexion d’AWS.

La page de connexion s’affiche comme suit lorsque tu cliques sur le lien ci-dessus. Saisis tes informations d’identification pour te connecter à ton compte AWS.

Écran de connexion

Tu verras la console de gestion AWS principale comme suit une fois que tu auras réussi à te connecter à ton compte.

AWS Management console

Crée une alarme pour la table DynamoDB existante.

Cherche « Cloudwatch » dans le champ de recherche en haut de l’écran.

Recherche Cloudwatch

Tu verras le tableau de bord de Cloudwatch comme suit. Clique sur « Alarmes » dans le panneau de gauche.

Tableau de bord de Cloudwatch

Tu verras sur cet écran les alarmes existantes dans ton compte. Pour créer une nouvelle alarme pour la table DynamoDB existante, clique sur le bouton « Créer une alarme ».

Écran Alarmes

Tu obtiendras un écran pour spécifier les métriques et les conditions de l’alarme à créer. Clique sur le bouton « Sélectionner la métrique ».

Préciser la mét mét métrique et les conditions

Dans le champ de recherche, cherche « dynamodb » pour filtrer les métriques. Clique sur « DynamoDB > Table Metrics » pour voir les métriques disponibles pour les tables DynamoDB existantes.

Parcoure DynamoDB et sélectionne Table Metrics

Tu verras maintenant les métriques disponibles pour les tables DynamoDB existantes, tu peux choisir l’une d’entre elles pour créer une alarme. Ici, je vais procéder avec « ConsumedWriteCapacityUnits ». Clique sur le bouton « Sélectionner les métriques » pour continuer.

Choisis le système métrique

Choisis les statistiques, le type de seuil, l’état de l’alarme et la valeur du seuil souhaités. Ici, l’alarme sera déclenchée si le nombre d’échantillons de ConsumeWriteCapacityUnits est supérieur à 5 pendant 5 minutes.

Préciser la mét mét métrique et les conditions

Choisis le déclencheur d’état d’alarme et le sujet SNS. Lorsque l’alarme est déclenchée, elle passe à l’état « En alarme » et envoie une notification au sujet SNS spécifié.

Config Config Config de les actions

Ajoute un nom et une description à l’alarme à créer et clique sur le bouton « Suivant ».

Ajoute le nom et la description

Vérifie toutes les configurations avant de créer une alarme. Une fois que les configurations semblent correctes, clique sur le bouton « Créer une alarme ».

Pré prév prév prév et créer

Une fois l’alarme créée, tu peux la voir dans la console « Alarmes ». L’état de l’alarme change en fonction de la valeur seuil et de la condition. Comme la condition a déjà été remplie, tu peux voir que l’alarme est dans l’état « En alarme ».

En alarme

Cela a déclenché l’alarme et la notification a été envoyée à l’abonnement du sujet SNS spécifié.

Notification d'alarme

Conclusion

Dans cet article, nous avons créé une alarme pour le paramètre « ConsumedWriteCapacityUnits ». Cette alarme est déclenchée lorsque le « Nombre d’échantillons » est « supérieur » au seuil « 5 » pendant la période de « 5 minutes ». Nous avons également vu qu’une notification est envoyée à l’abonnement au sujet SNS lorsque l’alarme est déclenchée. Tu peux maintenant utiliser les mêmes étapes et créer des alarmes pour différentes métriques, statistiques, types/valeurs de seuil.

Vous aimerez aussi...