D'autres AWS SDK exemples sont disponibles dans le GitHub dépôt AWS Doc SDK Examples
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.
CloudWatch exemples utilisant AWS CLI
Les exemples de code suivants vous montrent comment effectuer des actions et implémenter des scénarios courants à l'aide du AWS Command Line Interface with CloudWatch.
Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous montrent comment appeler des fonctions de service individuelles, vous pouvez les visualiser dans leur contexte dans leurs scénarios associés.
Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la façon de configurer et d'exécuter le code en contexte.
Rubriques
Actions
L'exemple de code suivant montre comment utiliserdelete-alarms
.
- AWS CLI
-
Pour supprimer une alarme
L'exemple suivant utilise la
delete-alarms
commande pour supprimer l' CloudWatch alarme Amazon nommée « myalarm » :aws cloudwatch delete-alarms --alarm-names
myalarm
Sortie :
This command returns to the prompt if successful.
-
Pour API plus de détails, voir DeleteAlarms
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdescribe-alarm-history
.
- AWS CLI
-
Pour récupérer l’historique d’une alarme
L'exemple suivant utilise la
describe-alarm-history
commande pour récupérer l'historique de l'CloudWatch alarme Amazon nommée « myalarm » :aws cloudwatch describe-alarm-history --alarm-name
"myalarm"
--history-item-typeStateUpdate
Sortie :
{ "AlarmHistoryItems": [ { "Timestamp": "2014-04-09T18:59:06.442Z", "HistoryItemType": "StateUpdate", "AlarmName": "myalarm", "HistoryData": "{\"version\":\"1.0\",\"oldState\":{\"stateValue\":\"ALARM\",\"stateReason\":\"testing purposes\"},\"newState\":{\"stateValue\":\"OK\",\"stateReason\":\"Threshold Crossed: 2 datapoints were not greater than the threshold (70.0). The most recent datapoints: [38.958, 40.292].\",\"stateReasonData\":{\"version\":\"1.0\",\"queryDate\":\"2014-04-09T18:59:06.419+0000\",\"startDate\":\"2014-04-09T18:44:00.000+0000\",\"statistic\":\"Average\",\"period\":300,\"recentDatapoints\":[38.958,40.292],\"threshold\":70.0}}}", "HistorySummary": "Alarm updated from ALARM to OK" }, { "Timestamp": "2014-04-09T18:59:05.805Z", "HistoryItemType": "StateUpdate", "AlarmName": "myalarm", "HistoryData": "{\"version\":\"1.0\",\"oldState\":{\"stateValue\":\"OK\",\"stateReason\":\"Threshold Crossed: 2 datapoints were not greater than the threshold (70.0). The most recent datapoints: [38.839999999999996, 39.714].\",\"stateReasonData\":{\"version\":\"1.0\",\"queryDate\":\"2014-03-11T22:45:41.569+0000\",\"startDate\":\"2014-03-11T22:30:00.000+0000\",\"statistic\":\"Average\",\"period\":300,\"recentDatapoints\":[38.839999999999996,39.714],\"threshold\":70.0}},\"newState\":{\"stateValue\":\"ALARM\",\"stateReason\":\"testing purposes\"}}", "HistorySummary": "Alarm updated from OK to ALARM" } ] }
-
Pour API plus de détails, voir DescribeAlarmHistory
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdescribe-alarms-for-metric
.
- AWS CLI
-
Pour afficher des informations relatives aux alarmes associées à une métrique
L'exemple suivant utilise la
describe-alarms-for-metric
commande pour afficher des informations sur les alarmes associées à la EC2 CPUUtilization métrique Amazon et à l'instance portant l'ID i-0c986c72. :aws cloudwatch describe-alarms-for-metric --metric-name
CPUUtilization
--namespaceAWS/EC2
--dimensionsName=InstanceId,Value=i-0c986c72
Sortie :
{ "MetricAlarms": [ { "EvaluationPeriods": 10, "AlarmArn": "arn:aws:cloudwatch:us-east-1:111122223333:alarm:myHighCpuAlarm2", "StateUpdatedTimestamp": "2013-10-30T03:03:51.479Z", "AlarmConfigurationUpdatedTimestamp": "2013-10-30T03:03:50.865Z", "ComparisonOperator": "GreaterThanOrEqualToThreshold", "AlarmActions": [ "arn:aws:sns:us-east-1:111122223333:NotifyMe" ], "Namespace": "AWS/EC2", "AlarmDescription": "CPU usage exceeds 70 percent", "StateReasonData": "{\"version\":\"1.0\",\"queryDate\":\"2013-10-30T03:03:51.479+0000\",\"startDate\":\"2013-10-30T02:08:00.000+0000\",\"statistic\":\"Average\",\"period\":300,\"recentDatapoints\":[40.698,39.612,42.432,39.796,38.816,42.28,42.854,40.088,40.760000000000005,41.316],\"threshold\":70.0}", "Period": 300, "StateValue": "OK", "Threshold": 70.0, "AlarmName": "myHighCpuAlarm2", "Dimensions": [ { "Name": "InstanceId", "Value": "i-0c986c72" } ], "Statistic": "Average", "StateReason": "Threshold Crossed: 10 datapoints were not greater than or equal to the threshold (70.0). The most recent datapoints: [40.760000000000005, 41.316].", "InsufficientDataActions": [], "OKActions": [], "ActionsEnabled": true, "MetricName": "CPUUtilization" }, { "EvaluationPeriods": 2, "AlarmArn": "arn:aws:cloudwatch:us-east-1:111122223333:alarm:myHighCpuAlarm", "StateUpdatedTimestamp": "2014-04-09T18:59:06.442Z", "AlarmConfigurationUpdatedTimestamp": "2014-04-09T22:26:05.958Z", "ComparisonOperator": "GreaterThanThreshold", "AlarmActions": [ "arn:aws:sns:us-east-1:111122223333:HighCPUAlarm" ], "Namespace": "AWS/EC2", "AlarmDescription": "CPU usage exceeds 70 percent", "StateReasonData": "{\"version\":\"1.0\",\"queryDate\":\"2014-04-09T18:59:06.419+0000\",\"startDate\":\"2014-04-09T18:44:00.000+0000\",\"statistic\":\"Average\",\"period\":300,\"recentDatapoints\":[38.958,40.292],\"threshold\":70.0}", "Period": 300, "StateValue": "OK", "Threshold": 70.0, "AlarmName": "myHighCpuAlarm", "Dimensions": [ { "Name": "InstanceId", "Value": "i-0c986c72" } ], "Statistic": "Average", "StateReason": "Threshold Crossed: 2 datapoints were not greater than the threshold (70.0). The most recent datapoints: [38.958, 40.292].", "InsufficientDataActions": [], "OKActions": [], "ActionsEnabled": false, "MetricName": "CPUUtilization" } ] }
-
Pour API plus de détails, voir DescribeAlarmsForMetric
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdescribe-alarms
.
- AWS CLI
-
Pour répertorier les informations relatives à une alarme
L’exemple suivant fait appel à la commande
describe-alarms
pour fournir des informations sur l’alarme nommée « myalarm » :aws cloudwatch describe-alarms --alarm-names
"myalarm"
Sortie :
{ "MetricAlarms": [ { "EvaluationPeriods": 2, "AlarmArn": "arn:aws:cloudwatch:us-east-1:123456789012:alarm:myalarm", "StateUpdatedTimestamp": "2014-04-09T18:59:06.442Z", "AlarmConfigurationUpdatedTimestamp": "2012-12-27T00:49:54.032Z", "ComparisonOperator": "GreaterThanThreshold", "AlarmActions": [ "arn:aws:sns:us-east-1:123456789012:myHighCpuAlarm" ], "Namespace": "AWS/EC2", "AlarmDescription": "CPU usage exceeds 70 percent", "StateReasonData": "{\"version\":\"1.0\",\"queryDate\":\"2014-04-09T18:59:06.419+0000\",\"startDate\":\"2014-04-09T18:44:00.000+0000\",\"statistic\":\"Average\",\"period\":300,\"recentDatapoints\":[38.958,40.292],\"threshold\":70.0}", "Period": 300, "StateValue": "OK", "Threshold": 70.0, "AlarmName": "myalarm", "Dimensions": [ { "Name": "InstanceId", "Value": "i-0c986c72" } ], "Statistic": "Average", "StateReason": "Threshold Crossed: 2 datapoints were not greater than the threshold (70.0). The most recent datapoints: [38.958, 40.292].", "InsufficientDataActions": [], "OKActions": [], "ActionsEnabled": true, "MetricName": "CPUUtilization" } ] }
-
Pour API plus de détails, voir DescribeAlarms
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdisable-alarm-actions
.
- AWS CLI
-
Pour désactiver les actions d’une alarme
L’exemple suivant fait appel à la commande
disable-alarm-actions
pour désactiver toutes les actions de l’alarme nommée myalarm :aws cloudwatch disable-alarm-actions --alarm-names
myalarm
Cette commande revient à l’invite en cas de succès.
-
Pour API plus de détails, voir DisableAlarmActions
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserenable-alarm-actions
.
- AWS CLI
-
Pour activer toutes les actions d’une alarme
L’exemple suivant fait appel à la commande
enable-alarm-actions
pour activer toutes les actions de l’alarme nommée myalarm :aws cloudwatch enable-alarm-actions --alarm-names
myalarm
Cette commande revient à l’invite en cas de succès.
-
Pour API plus de détails, voir EnableAlarmActions
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserget-metric-statistics
.
- AWS CLI
-
Pour obtenir le CPU taux d'utilisation par EC2 instance
L'exemple suivant utilise la
get-metric-statistics
commande pour obtenir l'CPUutilisation d'une EC2 instance portant l'ID i-abcdef.aws cloudwatch get-metric-statistics --metric-name
CPUUtilization
--start-time2014-04-08T23:18:00Z
--end-time2014-04-09T23:18:00Z
--period3600
--namespaceAWS/EC2
--statisticsMaximum
--dimensionsName=InstanceId,Value=i-abcdef
Sortie :
{ "Datapoints": [ { "Timestamp": "2014-04-09T11:18:00Z", "Maximum": 44.79, "Unit": "Percent" }, { "Timestamp": "2014-04-09T20:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T19:18:00Z", "Maximum": 50.85, "Unit": "Percent" }, { "Timestamp": "2014-04-09T09:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T03:18:00Z", "Maximum": 76.84, "Unit": "Percent" }, { "Timestamp": "2014-04-09T21:18:00Z", "Maximum": 48.96, "Unit": "Percent" }, { "Timestamp": "2014-04-09T14:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T08:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T16:18:00Z", "Maximum": 45.55, "Unit": "Percent" }, { "Timestamp": "2014-04-09T06:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T13:18:00Z", "Maximum": 45.08, "Unit": "Percent" }, { "Timestamp": "2014-04-09T05:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T18:18:00Z", "Maximum": 46.88, "Unit": "Percent" }, { "Timestamp": "2014-04-09T17:18:00Z", "Maximum": 52.08, "Unit": "Percent" }, { "Timestamp": "2014-04-09T07:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T02:18:00Z", "Maximum": 51.23, "Unit": "Percent" }, { "Timestamp": "2014-04-09T12:18:00Z", "Maximum": 47.67, "Unit": "Percent" }, { "Timestamp": "2014-04-08T23:18:00Z", "Maximum": 46.88, "Unit": "Percent" }, { "Timestamp": "2014-04-09T10:18:00Z", "Maximum": 51.91, "Unit": "Percent" }, { "Timestamp": "2014-04-09T04:18:00Z", "Maximum": 47.13, "Unit": "Percent" }, { "Timestamp": "2014-04-09T15:18:00Z", "Maximum": 48.96, "Unit": "Percent" }, { "Timestamp": "2014-04-09T00:18:00Z", "Maximum": 48.16, "Unit": "Percent" }, { "Timestamp": "2014-04-09T01:18:00Z", "Maximum": 49.18, "Unit": "Percent" } ], "Label": "CPUUtilization" }
Spécification de plusieurs dimensions
L’exemple suivant illustre comment spécifier plusieurs dimensions. Chaque dimension est spécifiée sous la forme d’une paire nom/valeur, avec une virgule entre le nom et la valeur. Les différentes dimensions sont séparées par une espace. Si une métrique comprend plusieurs dimensions, vous devez préciser une valeur pour chaque dimension définie.
Pour d'autres exemples d'utilisation de cette
get-metric-statistics
commande, consultez la section Obtenir des statistiques pour une métrique dans le manuel Amazon CloudWatch Developer Guide.aws cloudwatch get-metric-statistics --metric-name
Buffers
--namespaceMyNameSpace
--dimensionsName=InstanceID,Value=i-abcdef
Name=InstanceType,Value=m1.small
--start-time2016-10-15T04:00:00Z
--end-time2016-10-19T07:00:00Z
--statisticsAverage
--period60
-
Pour API plus de détails, voir GetMetricStatistics
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserlist-metrics
.
- AWS CLI
-
Pour répertorier les statistiques pour Amazon SNS
L'
list-metrics
exemple suivant affiche les statistiques pour AmazonSNS.aws cloudwatch list-metrics \ --namespace
"AWS/SNS"
Sortie :
{ "Metrics": [ { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "NotifyMe" } ], "MetricName": "PublishSize" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "CFO" } ], "MetricName": "PublishSize" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "NotifyMe" } ], "MetricName": "NumberOfNotificationsFailed" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "NotifyMe" } ], "MetricName": "NumberOfNotificationsDelivered" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "NotifyMe" } ], "MetricName": "NumberOfMessagesPublished" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "CFO" } ], "MetricName": "NumberOfMessagesPublished" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "CFO" } ], "MetricName": "NumberOfNotificationsDelivered" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "CFO" } ], "MetricName": "NumberOfNotificationsFailed" } ] }
-
Pour API plus de détails, voir ListMetrics
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserput-metric-alarm
.
- AWS CLI
-
Pour envoyer un e-mail Amazon Simple Notification Service lorsque le CPU taux d'utilisation est supérieur à 70 %
L'exemple suivant utilise la
put-metric-alarm
commande pour envoyer un message électronique Amazon Simple Notification Service lorsque le CPU taux d'utilisation dépasse 70 % :aws cloudwatch put-metric-alarm --alarm-name
cpu-mon
--alarm-description"Alarm when CPU exceeds 70 percent"
--metric-nameCPUUtilization
--namespaceAWS/EC2
--statisticAverage
--period300
--threshold70
--comparison-operatorGreaterThanThreshold
--dimensions"Name=InstanceId,Value=i-12345678"
--evaluation-periods2
--alarm-actionsarn:aws:sns:us-east-1:111122223333:MyTopic
--unitPercent
Cette commande revient à l’invite en cas de succès. Si une alarme portant le même nom existe déjà, elle sera remplacée par la nouvelle alarme.
Pour spécifier plusieurs dimensions
L’exemple suivant illustre comment spécifier plusieurs dimensions. Chaque dimension est spécifiée sous la forme d’une paire nom/valeur, avec une virgule entre le nom et la valeur. Les différentes dimensions sont séparées par une espace :
aws cloudwatch put-metric-alarm --alarm-name
"Default_Test_Alarm3"
--alarm-description"The default example alarm"
--namespace"CW EXAMPLE METRICS"
--metric-nameDefault_Test
--statisticAverage
--period60
--evaluation-periods3
--threshold50
--comparison-operatorGreaterThanOrEqualToThreshold
--dimensionsName=key1,Value=value1
Name=key2,Value=value2
-
Pour API plus de détails, voir PutMetricAlarm
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserput-metric-data
.
- AWS CLI
-
Pour publier une métrique personnalisée sur Amazon CloudWatch
L'exemple suivant utilise la
put-metric-data
commande pour publier une métrique personnalisée sur Amazon CloudWatch :aws cloudwatch put-metric-data --namespace
"Usage Metrics"
--metric-datafile://metric.json
Les valeurs de la métrique elle-même sont stockées dans le JSON fichier
metric.json
.Voici le contenu de ce fichier :
[ { "MetricName": "New Posts", "Timestamp": "Wednesday, June 12, 2013 8:28:20 PM", "Value": 0.50, "Unit": "Count" } ]
Pour plus d'informations, consultez la section Publication de métriques personnalisées dans le manuel Amazon CloudWatch Developer Guide.
Pour spécifier plusieurs dimensions
L’exemple suivant illustre comment spécifier plusieurs dimensions. Chaque dimension est spécifiée sous la forme d’une paire nom=valeur. Les différentes dimensions sont séparées par une virgule :
aws cloudwatch put-metric-data --metric-name
Buffers
--namespaceMyNameSpace
--unitBytes
--value231434333
--dimensionsInstanceID=1-23456789,InstanceType=m1.small
-
Pour API plus de détails, voir PutMetricData
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserset-alarm-state
.
- AWS CLI
-
Pour modifier temporairement l'état d'une alarme
L'exemple suivant utilise la
set-alarm-state
commande pour modifier temporairement l'état d'une CloudWatch alarme Amazon nommée « myalarm » et la définir sur ALARM cet état à des fins de test :aws cloudwatch set-alarm-state --alarm-name
"myalarm"
--state-valueALARM
--state-reason"testing purposes"
Cette commande revient à l’invite en cas de succès.
-
Pour API plus de détails, voir SetAlarmState
la section Référence des AWS CLI commandes.
-