Création d' CloudWatch alarmes dans DynamoDB - Amazon DynamoDB

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.

Création d' CloudWatch alarmes dans DynamoDB

Une CloudWatch alarme surveille une seule métrique sur une période spécifiée et exécute une ou plusieurs actions spécifiées, en fonction de la valeur de la métrique par rapport à un seuil au fil du temps. L'action est une notification envoyée à une rubrique Amazon SNS ou à une politique Amazon EC2 Auto Scaling. Vous pouvez également ajouter des alarmes aux tableaux de bord afin de surveiller et de recevoir des alertes concernant vos AWS ressources et applications dans plusieurs régions. Il n'y a aucune limite au nombre d'alarmes que vous pouvez créer. CloudWatch les alarmes n'appellent pas d'actions simplement parce qu'elles sont dans un état particulier ; l'état doit avoir changé et être maintenu pendant un certain nombre de périodes. Pour obtenir la liste des alarmes DynamoDB recommandées, consultez Alarmes recommandées.

Note

Vous devez spécifier toutes les dimensions requises lors de la création de votre CloudWatch alarme, car les mesures relatives à une dimension manquante ne CloudWatch seront pas agrégées. La création CloudWatch d'une alarme avec une dimension manquante ne provoquera pas d'erreur lors de la création de l'alarme.

Supposons que vous disposiez d’une table provisionnée avec cinq unités de capacité de lecture. Vous souhaitez être averti avant de consommer la totalité de la capacité de lecture allouée. Vous décidez donc de créer une CloudWatch alarme pour être averti lorsque la capacité consommée atteint 80 % de la capacité que vous avez allouée pour la table. Vous pouvez créer des alarmes dans la CloudWatch console ou à l'aide du AWS CLI.

Création d'une alarme dans la CloudWatch console

Pour créer une alarme dans la CloudWatch console
  1. Connectez-vous à la CloudWatch console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/cloudwatch/.

  2. Dans le panneau de navigation, choisissez Alarms (alertes), All alarms (Toutes les alertes).

  3. Choisissez Create alarm (Créer une alerte).

  4. Recherchez la rangée contenant le tableau que vous souhaitez surveiller et ConsumeReadCapacityUnits dans la colonne Nom de la métrique. Cochez la case en regard de cette ligne, puis choisissez Sélectionner la métrique.

  5. Sous Spécifier les métriques et les conditions, dans le champ Statistique, sélectionnez Somme. Choisissez une période de 1 minute.

  6. Sous Conditions, spécifiez les éléments suivants :

    1. Pour Threshold type (Type de seuil), choisissez Static (Statique).

    2. Pour Chaque fois que ConsumedReadCapacityUnits est, choisissez Supérieur à/Égal à et spécifiez le seuil 240.

  7. Choisissez Suivant.

  8. Sous Notification, choisissez In alarm et sélectionnez une rubrique SNS à notifier lorsque l’alerte est en état ALARM.

  9. Lorsque vous avez terminé, choisissez Suivant.

  10. Saisissez le nom et la description de l’alarme, puis choisissez Suivant.

  11. Dans Prévisualiser et créer, confirmez que les informations et les conditions sont telles que vous les voulez, puis choisissez Créer une alarme.

Création d'une alarme dans AWS CLI

aws cloudwatch put-metric-alarm \ -\-alarm-name ReadCapacityUnitsLimitAlarm \ -\-alarm-description "Alarm when read capacity reaches 80% of my provisioned read capacity" \ -\-namespace AWS/DynamoDB \ -\-metric-name ConsumedReadCapacityUnits \ -\-dimensions Name=TableName,Value=myTable \ -\-statistic Sum \ -\-threshold 240 \ -\-comparison-operator GreaterThanOrEqualToThreshold \ -\-period 60 \ -\-evaluation-periods 1 \ -\-alarm-actions arn:aws:sns:us-east-1:123456789012:capacity-alarm

Testez l’alarme.

aws cloudwatch set-alarm-state -\-alarm-name ReadCapacityUnitsLimitAlarm -\-state-reason "initializing" -\-state-value OK
aws cloudwatch set-alarm-state -\-alarm-name ReadCapacityUnitsLimitAlarm -\-state-reason "initializing" -\-state-value ALARM

Plus d' AWS CLI exemples

La procédure suivante décrit comment vous êtes averti si vos demandes dépassent les quotas de débit provisionnés pour une table.

  1. Créez une rubrique Amazon SNS. arn:aws:sns:us-east-1:123456789012:requests-exceeding-throughput Pour plus d’informations, consultez Configuration d’Amazon Simple Notification Service.

  2. Créez l’alerte.

    aws cloudwatch put-metric-alarm \ -\-alarm-name ReadCapacityUnitsLimitAlarm \ -\-alarm-description "Alarm when read capacity reaches 80% of my provisioned read capacity" \ -\-namespace AWS/DynamoDB \ -\-metric-name ConsumedReadCapacityUnits \ -\-dimensions Name=TableName,Value=myTable \ -\-statistic Sum \ -\-threshold 240 \ -\-comparison-operator GreaterThanOrEqualToThreshold \ -\-period 60 \ -\-evaluation-periods 1 \ -\-alarm-actions arn:aws:sns:us-east-1:123456789012:capacity-alarm
  3. Testez l’alarme.

    aws cloudwatch set-alarm-state --alarm-name RequestsExceedingThroughputAlarm --state-reason "initializing" --state-value OK
    aws cloudwatch set-alarm-state --alarm-name RequestsExceedingThroughputAlarm --state-reason "initializing" --state-value ALARM

La procédure suivante décrit comment vous êtes averti en cas d’erreur système.

  1. Créez une rubrique Amazon SNS. arn:aws:sns:us-east-1:123456789012:notify-on-system-errors Pour plus d’informations, consultez Configuration d’Amazon Simple Notification Service.

  2. Créez l’alerte.

    aws cloudwatch put-metric-alarm \ --alarm-name SystemErrorsAlarm \ --alarm-description "Alarm when system errors occur" \ --namespace AWS/DynamoDB \ --metric-name SystemErrors \ --dimensions Name=TableName,Value=myTable Name=Operation,Value=aDynamoDBOperation \ --statistic Sum \ --threshold 0 \ --comparison-operator GreaterThanThreshold \ --period 60 \ --unit Count \ --evaluation-periods 1 \ --treat-missing-data breaching \ --alarm-actions arn:aws:sns:us-east-1:123456789012:notify-on-system-errors
  3. Testez l’alarme.

    aws cloudwatch set-alarm-state --alarm-name SystemErrorsAlarm --state-reason "initializing" --state-value OK
    aws cloudwatch set-alarm-state --alarm-name SystemErrorsAlarm --state-reason "initializing" --state-value ALARM