AWS announces preview of AWS Interconnect - multicloud
AWS announces AWS Interconnect – multicloud (preview), providing simple, resilient, high-speed private connections to other cloud service providers. AWS Interconnect - multicloud is easy to configure and provides high-speed, resilient connectivity with dedicated bandwidth, enabling customers to interconnect AWS networking services such as AWS Transit Gateway, AWS Cloud WAN, and Amazon VPC to other cloud service providers with ease.
Sollte ich GetMetricData oder GetMetricStatistics für CloudWatch-Metriken verwenden?
Ich möchte wissen, ob es besser ist, die GetMetricData- oder die GetMetricStatistics-API zu verwenden, um Datenpunkte aus meinen Amazon-CloudWatch-Metriken abzurufen.
Kurzbeschreibung
Es hat sich bewährt, die GetMetricData-API anstelle von GetMetricStatistics zu verwenden, da GetMetricData schneller größere Datenmengen abrufen kann. GetMetricData unterstützt außerdem Metrik-Mathematik und liefert geordnete, paginierte Ergebnisse. Die Verwendung von GetMetricStatistics in CloudWatch für bis zu 1 Million API-Anfragen wird Ihnen nicht in Rechnung gestellt. Die Verwendung von GetMetricData in CloudWatch wird Ihnen jedoch in Rechnung gestellt.
Im Folgenden sind die Service Quotas für die GetMetricData-API aufgeführt:
- 50 Transaktionen pro Sekunde (TPS).
- 180.000 Datenpunkte pro Sekunde (DPS), wenn die StartTime in der API-Anfrage drei Stunden oder weniger von der aktuellen Uhrzeit entfernt ist.
- 396.000 DPS, wenn die StartTime mehr als 3 Stunden von der aktuellen Uhrzeit entfernt ist.
Lösung
Hinweis: Wenn bei der Ausführung von Befehlen in AWS Command Line Interface (AWS CLI) Fehler auftreten, finden Sie weitere Informationen unter Troubleshoot AWS CLI errors. Stellen Sie außerdem sicher, dass Sie die neueste Version von AWS CLI verwenden.
Gehen Sie wie folgt vor, um die GetMetricData-API in AWS CLI aufzurufen:
-
Erstellen Sie einen Eingabeparameter für Ihren GetMetricData-API-Aufruf.
Beispielaufruf:$ cat metric-data-queries.json [ { "Id": "e1", "Expression": "m1 / m2", "Label": "ErrorRate" }, { "Id": "m1", "MetricStat": { "Metric": { "Namespace": "MyApplication", "MetricName": "Errors", "Dimensions": [ { "Name": "FunctionName", "Value": "MyFunc" } ] }, "Period": 300, "Stat": "Sum", "Unit": "Count" }, "ReturnData": false }, { "Id": "m2", "MetricStat": { "Metric": { "Namespace": "MyApplication", "MetricName": "Invocations", "Dimensions": [ { "Name": "FunctionName", "Value": "MyFunc" } ] }, "Period": 300, "Stat": "Sum", "Unit": "Count" }, "ReturnData": false } ]Hinweis: Im obigen Aufruf hat der Eingabeparameter benutzerdefinierte Metriken für Aufrufe und Fehler. Die Metrik ErrorRate wird anhand der Metrik-Mathematik der anderen beiden Metriken berechnet.
-
Verwenden Sie PutMetricData, um beispielhafte Metrikdaten als benutzerdefinierte Metriken zu veröffentlichen.
Beispielaufruf:$ aws cloudwatch put-metric-data --namespace MyApplication --metric-name Invocations --dimensions FunctionName=MyFunc --value 10 --unit Count --timestamp 2018-06-19T04:00:00Z $ aws cloudwatch put-metric-data --namespace MyApplication --metric-name Invocations --dimensions FunctionName=MyFunc --value 10 --unit Count --timestamp 2018-06-19T04:05:00Z $ aws cloudwatch put-metric-data --namespace MyApplication --metric-name Invocations --dimensions FunctionName=MyFunc --value 10 --unit Count --timestamp 2018-06-19T04:10:00Z $ aws cloudwatch put-metric-data --namespace MyApplication --metric-name Invocations --dimensions FunctionName=MyFunc --value 10 --unit Count --timestamp 2018-06-19T04:15:00Z $ aws cloudwatch put-metric-data --namespace MyApplication --metric-name Invocations --dimensions FunctionName=MyFunc --value 10 --unit Count --timestamp 2018-06-19T04:20:00Z $ aws cloudwatch put-metric-data --namespace MyApplication --metric-name Errors --dimensions FunctionName=MyFunc --value 3 --unit Count --timestamp 2018-06-19T04:00:00Z $ aws cloudwatch put-metric-data --namespace MyApplication --metric-name Errors --dimensions FunctionName=MyFunc --value 6 --unit Count --timestamp 2018-06-19T04:05:00Z $ aws cloudwatch put-metric-data --namespace MyApplication --metric-name Errors --dimensions FunctionName=MyFunc --value 2 --unit Count --timestamp 2018-06-19T04:10:00Z $ aws cloudwatch put-metric-data --namespace MyApplication --metric-name Errors --dimensions FunctionName=MyFunc --value 9 --unit Count --timestamp 2018-06-19T04:15:00Z $ aws cloudwatch put-metric-data --namespace MyApplication --metric-name Errors --dimensions FunctionName=MyFunc --value 1 --unit Count --timestamp 2018-06-19T04:20:00ZHinweis: Verwenden Sie einen einzigen PutMetricData-API-Aufruf unter demselben Namespace, um bis zu 20 Metriken zu veröffentlichen. Um einen einzelnen PutMetricData-API-Aufruf unter demselben Namespace auszuführen, verwenden Sie die Option**--metric-data** im PutMetricData-Aufruf.
-
Führen Sie den Befehl get-metric-data mit Ihren Eingabeparametern aus:
$ aws cloudwatch get-metric-data --metric-data-queries file://./metric-data-queries.json --start-time 2018-06-19T04:00:00Z --end-time 2018-06-19T04:30:00Z -
Überprüfen Sie die Ausgabe.
Beispielausgabe:$ aws cloudwatch get-metric-data --metric-data-queries file://./metric-data-queries.json --start-time 2018-06-19T04:00:00Z --end-time 2018-06-19T04:30:00Z { "MetricDataResults": [ { "Timestamps": [ "2018-06-19T04:20:00Z", "2018-06-19T04:15:00Z", "2018-06-19T04:10:00Z", "2018-06-19T04:05:00Z", "2018-06-19T04:00:00Z" ], "StatusCode": "Complete", "Values": [ 0.1, 0.9, 0.2, 0.6, 0.3 ], "Id": "e1", "Label": "ErrorRate" } ] }Hinweis: In der obigen Beispielausgabe werden fünf Datenpunkte mit Metrik-Mathematik berechnet und als zeitgeordnetes Ergebnis ausgegeben. Da ReturnData auf false gesetzt ist, sind m1 und m2 nicht in der Antwort enthalten.
Verwandte Informationen
- Sprache
- Deutsch

Relevanter Inhalt
AWS OFFICIALAktualisiert vor 3 Jahren
AWS OFFICIALAktualisiert vor 2 Jahren