Comment les données partielles d'une requête Metrics Insights entrent CloudWatch - Amazon CloudWatch

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.

Comment les données partielles d'une requête Metrics Insights entrent CloudWatch

Si la requête Metrics Insights utilisée pour l'alarme correspond à plus de 10 000 métriques, l'alarme est évaluée sur la base des 10 000 premières métriques trouvées par la requête. Cela signifie que l'alarme est évaluée sur des données partielles.

Vous pouvez utiliser les méthodes suivantes pour savoir si une alarme Metrics Insights est en train d'évaluer son état d'alarme sur la base de données partielles :

  • Dans la console, si vous choisissez une alarme pour voir la page Details (Détails), le message Evaluation warning: Not evaluating all data (Avertissement d'évaluation : toutes les données ne sont pas évaluées) apparaît sur cette page.

  • La valeur s'affiche PARTIAL_DATA dans le EvaluationState champ lorsque vous utilisez la AWS CLI commande describe-alarm ou le. DescribeAlarmsAPI

Les alarmes publient également des événements sur Amazon EventBridge lorsqu'elles passent à l'état de données partielles. Vous pouvez donc créer une EventBridge règle pour surveiller ces événements. Dans ces cas, le champ evaluationState possède la valeur PARTIAL_DATA. Voici un exemple.

{ "version": "0", "id": "12345678-3bf9-6a09-dc46-12345EXAMPLE", "detail-type": "CloudWatch Alarm State Change", "source": "aws.cloudwatch", "account": "123456789012", "time": "2022-11-08T11:26:05Z", "region": "us-east-1", "resources": [ "arn:aws:cloudwatch:us-east-1:123456789012:alarm:my-alarm-name" ], "detail": { "alarmName": "my-alarm-name", "state": { "value": "ALARM", "reason": "Threshold Crossed: 3 out of the last 3 datapoints [20000.0 (08/11/22 11:25:00), 20000.0 (08/11/22 11:24:00), 20000.0 (08/11/22 11:23:00)] were greater than the threshold (0.0) (minimum 1 datapoint for OK -> ALARM transition).", "reasonData": "{\"version\":\"1.0\",\"queryDate\":\"2022-11-08T11:26:05.399+0000\",\"startDate\":\"2022-11-08T11:23:00.000+0000\",\"period\":60,\"recentDatapoints\":[20000.0,20000.0,20000.0],\"threshold\":0.0,\"evaluatedDatapoints\":[{\"timestamp\":\"2022-11-08T11:25:00.000+0000\",\"value\":20000.0}]}", "timestamp": "2022-11-08T11:26:05.401+0000", "evaluationState": "PARTIAL_DATA" }, "previousState": { "value": "INSUFFICIENT_DATA", "reason": "Unchecked: Initial alarm creation", "timestamp": "2022-11-08T11:25:51.227+0000" }, "configuration": { "metrics": [ { "id": "m2", "expression": "SELECT SUM(PartialDataTestMetric) FROM partial_data_test", "returnData": true, "period": 60 } ] } } }

Si la requête pour l'alarme inclut une instruction GROUP BY qui renvoie initialement plus de 500 séries chronologiques, l'alarme est évaluée en fonction des 500 premières séries chronologiques détectées par la requête. Toutefois, si vous utilisez une clause ORDER BY, toutes les séries temporelles détectées par la requête sont triées, et les 500 qui ont les valeurs les plus élevées ou les plus faibles selon votre clause ORDER BY sont utilisées pour évaluer l'alarme.