Verwenden der Internet-Monitor-Abfrageschnittstelle - Amazon CloudWatch

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verwenden der Internet-Monitor-Abfrageschnittstelle

Eine Möglichkeit, mehr über den Internetverkehr für Ihre AWS Anwendung zu erfahren, ist die Verwendung der Internet Monitor-Abfrageschnittstelle. Um die Abfrageschnittstelle zu verwenden, erstellen Sie eine Abfrage mit von Ihnen ausgewählten Datenfiltern und führen dann die Abfrage aus, um eine Teilmenge Ihrer Internet-Monitor-Daten zurückzugeben. Wenn Sie die Daten untersuchen, die die Abfrage zurückgibt, erhalten Sie Einblicke in die Leistung Ihrer Anwendung im Internet.

Sie können alle Messwerte, die Internet Monitor mit Ihrem Monitor erfasst, abfragen und untersuchen, darunter Verfügbarkeits- und Leistungswerte, übertragene Byte, Round-Trip-Zeiten und Time to First Byte (TTFB).

Internet Monitor verwendet die Abfrageschnittstelle, um die Daten bereitzustellen, die Sie im Dashboard der Internet-Monitor-Konsole untersuchen können. Mithilfe der Suchoptionen im Dashboard – auf der Seite Analyse oder der Seite Optimierung – können Sie Internetdaten für Ihre Anwendung abfragen und filtern.

Wenn Sie mehr Flexibilität beim Durchsuchen und Filtern Ihrer Daten wünschen, als das Dashboard bietet, können Sie die Abfrageschnittstelle selbst verwenden, indem Sie Internet Monitor-API-Operationen mit dem AWS Command Line Interface oder mit einem AWS SDK verwenden. In diesem Abschnitt werden die Abfragetypen vorgestellt, die Sie mit der Abfrageschnittstelle verwenden können, und die Filter, die Sie angeben können, um eine Teilmenge von Daten zu erstellen, um Einblicke in den Internetverkehr für Ihre Anwendung zu erhalten.

So benutzt man die Abfrageschnittstelle

Sie erstellen eine Abfrage mit der Abfrageschnittstelle, indem Sie einen Abfragetyp auswählen und dann Filterwerte angeben, um eine bestimmte gewünschte Teilmenge Ihrer Protokolldateidaten zurückzugeben. Anschließend können Sie mit der Datenteilmenge arbeiten, um weiter zu filtern und zu sortieren, Berichte zu erstellen usw.

Der Abfrageprozess funktioniert wie folgt:

  1. Wenn Sie eine Abfrage ausführen, gibt Internet Monitor eine query ID zurück, der für die Abfrage eindeutig ist. In diesem Abschnitt werden die verfügbaren Abfragetypen und Optionen zum Filtern von Daten in Abfragen beschrieben. Um zu verstehen, wie das funktioniert, können Sie sich auch den Abschnitt mit Abfragebeispielen ansehen.

  2. Bei der GetQueryResultsAPI-Operation, um Datenergebnisse für die Abfrage zurückzugeben, geben Sie die Abfrage-ID zusammen mit Ihrem Monitornamen an. Jeder Abfragetyp gibt einen anderen Satz von Datenfeldern zurück. Weitere Informationen finden Sie unter Abfrageergebnisse abrufen.

Die Abfrageschnittstelle bietet die folgenden Abfragetypen. Jeder Abfragetyp gibt einen anderen Satz von Informationen über Ihren Datenverkehr aus den Protokolldateien zurück, wie in der Abbildung gezeigt.

  • Messungen: Zeigt die Verfügbarkeitsbewertung, die Leistungsbewertung, den Gesamtdatenverkehr und die Round-Trip-Zeiten in Intervallen von 5 Minuten an.

  • Top-Standorte: Stellt Verfügbarkeitsbewertung, Leistungsbewertung, Gesamtdatenverkehr und Time to First Byte (TTFB)-Informationen für die Kombinationen aus Top-Standorten und ASNs bereit, die Sie überwachen, sortiert nach Verkehrsaufkommen.

  • Details zu den wichtigsten Standorten: Stellt TTFB für Amazon CloudFront, Ihre aktuelle Konfiguration und die leistungsstärkste EC2 Amazon-Konfiguration in Intervallen von 1 Stunde bereit.

  • Allgemeine Verkehrsvorschläge: Stellt TTFB unter Verwendung eines gewichteten 30-Tage-Durchschnitts für den gesamten Verkehr an jedem überwachten AWS Standort bereit.

  • Allgemeine Informationen zu Verkehrsvorschlägen: Stellt TTFB unter Verwendung eines gewichteten 30-Tage-Durchschnitts für jeden Top-Standort für einen vorgeschlagenen Standort bereit. AWS

  • Routing-Vorschläge: Gibt die prognostizierte durchschnittliche Round-Trip-Zeit (RTT) von einem IP-Präfix zu einem AWS Standort für einen DNS-Resolver an. Die RTT wird in Intervallen von einer Stunde über einen Zeitraum von einer Stunde berechnet.

Sie können die Daten anhand spezifischer Kriterien zusätzlich filtern. Bei den meisten Abfragetypen, mit Ausnahme von Routing-Vorschlägen, können Sie eines oder mehrere der folgenden Filterkriterien angeben:

  • AWS Standort: Als AWS Standort können Sie einen CloudFront oder einen angeben AWS-Region, z. B. us-east-2

  • ASN: Geben Sie die autonome Systemnummer (ASN) eines DNS-Resolvers an (in der Regel ein ISP), z. B. 4225.

  • Kundenstandort: Geben Sie als Standort eine Stadt, eine Metro-Region, eine Unterteilung oder ein Land an.

  • Vorgeschlagener AWS Standort: Geben Sie eine AWS-Region, z. B.us-east-2, oder eine AWS lokale Zone an. Sie können diesen Filter für den Abfragetyp „Details zu allgemeinen Vorschlägen zum Datenverkehr“ verwenden.

  • Geo: Geben Sie geo für einige Abfragen an. Dies ist für Abfragen erforderlich, die den Top locations-Abfragetyp verwenden, ist aber für andere Abfragetypen nicht zulässig. Informationen darüber, wann geo für Filterparameter angegeben werden muss, finden Sie im Abschnitt mit Abfragebeispielen.

Beim Abfragetyp „Routing-Vorschläge“ können Sie die Daten zusätzlich filtern, indem Sie eines oder mehrere der folgenden Kriterien angeben:

  • Aktueller AWS Standort: Geben Sie einen an AWS-Region, z. us-east-2 B.

  • Vorgeschlagener AWS Standort: Geben Sie eine AWS-Region, z. B.us-east-2, oder eine AWS lokale Zone an.

  • IPv4 Präfix: Geben Sie ein IPv4 Präfix im Standardformat an, ähnlich wie192.0.2.0/24.

  • Monitor-ARN: Geben Sie den ARN für einen bestimmten Monitor an.

  • DNS-Resolver-IP: Geben Sie die IP-Adresse eines DNS-Resolvers an.

  • DNS-Resolver-ISP: Geben Sie den Namen eines DNS-Resolvers an (in der Regel ein ISP), z. B. Cloudflare.

  • DNS-Resolver-ASN: Geben Sie die autonome Systemnummer (ASN) eines DNS-Resolvers an (in der Regel ein ISP), z. B. 4225.

Die Operatoren, die Sie zum Filtern Ihrer Daten verwenden können, sind EQUALS und NOT_EQUALS. Einzelheiten zum Filtern von Parametern finden Sie unter FilterParameterAPI-Vorgang.

Einzelheiten zu den Operationen der Abfrageschnittstelle finden Sie unter den folgenden API-Operationen im API-Referenzhandbuch von Internet Monitor:

  • Informationen zum Erstellen und Ausführen einer Abfrage finden Sie unter StartQueryAPI-Vorgang.

  • Informationen zum Beenden einer Abfrage finden Sie unter StopQueryAPI-Vorgang.

  • Informationen zum Zurückgeben von Daten für eine von Ihnen erstellte Abfrage finden Sie unter GetQueryResultsAPI-Vorgang.

  • Informationen zum Abrufen des Status einer Abfrage finden Sie unter GetQueryStatusAPI-Vorgang.

Abfragebeispiele

Um eine Abfrage zu erstellen, mit der Sie einen gefilterten Datensatz aus der Protokolldatei Ihres Monitors abrufen können, verwenden Sie den StartQueryAPI-Vorgang. Sie geben einen Abfragetyp und Filterparameter für die Abfrage an. Anschließend, wenn Sie den API-Vorgang der Internet-Monitor-Abfrageschnittstelle verwenden, um mithilfe der Abfrage Ergebnisse zu erhalten, wird die Teilmenge Ihrer Daten abgerufen, mit der Sie arbeiten möchten.

Schauen wir uns einige Beispiele an, um zu veranschaulichen, wie Abfragetypen und Filterparameter funktionieren.

Beispiel 1

Nehmen wir an, Sie möchten alle Protokolldateidaten Ihres Monitors für ein bestimmtes Land abrufen, mit Ausnahme einer Stadt. Das folgende Beispiel zeigt Filterparameter für eine Abfrage, die Sie mit dem Vorgang StartQuery für dieses Szenario erstellen könnten.

{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "MEASUREMENTS" FilterParameters: [ { Field: "country", Operator: "EQUALS", Values: ["Germany"] }, { Field: "city", Operator: "NOT_EQUALS", Values: ["Berlin"] }, ] }

Beispiel 2

Als weiteres Beispiel wird angenommen, Sie möchten Ihre Top-Standorte nach Metropolregion gefiltert anzeigen. Sie könnten die folgende Beispielabfrage für dieses Szenario verwenden.

{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "TOP_LOCATIONS" FilterParameters: [ { Field: "geo", Operator: "EQUALS", Values: ["metro"] }, ] }

Beispiel 3

Nehmen wir nun an, Sie möchten sich die Top-Kombinationen aus Städten und Netzwerken in der Metropolregion Los Angeles ansehen. Geben Sie dazu geo=city an und setzen Sie metro auf Los Angeles. Jetzt gibt die Abfrage die Top-Städtenetze in der Metropolregion Los Angeles zurück anstatt der Top-Ergebnisse für Metro+-Netzwerke insgesamt.

Hier ist die Beispielabfrage, die Sie verwenden könnten:

{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "TOP_LOCATIONS" FilterParameters: [ { Field: "geo", Operator: "EQUALS", Values: ["city"] }, { Field: "metro", Operator: "EQUALS", Values: ["Los Angeles"] } ] }

Beispiel 4

Nehmen wir als Nächstes an, dass Sie TTFB-Daten für eine bestimmte Unterteilung (z. B. einen US-Bundesstaat) abrufen möchten.

Im Folgenden finden Sie eine Beispielabfrage für dieses Szenario:

{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "TOP_LOCATION_DETAILS" FilterParameters: [ { Field: "subdivision", Operator: "EQUALS", Values: ["California"] }, ] }

Beispiel 5

Angenommen, Sie möchten TTFB-Daten für jeden Standort abrufen, an dem Ihre Anwendung Client-Datenverkehr hat.

Im Folgenden finden Sie eine Beispielabfrage für dieses Szenario:

{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "OVERALL_TRAFFIC_SUGGESTIONS" FilterParameters: [] } Results: [us-east-1, 40, us-west-2, 30], [us-east-1, 40, us-west-1, 35], [us-east-1, 40, us-east-1, 44], [us-east-1, 40, CloudFront, 22], ... [us-east-2, 44, us-west-2, 30], [us-east-2, 44, us-west-1, 35], ...

Beispiel 6

Nehmen wir an, Sie möchten TTFB-Daten für ein bestimmtes neues AWS-Region Objekt abrufen.

Im Folgenden finden Sie eine Beispielabfrage für dieses Szenario:

{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "OVERALL_TRAFFIC_SUGGESTIONS_DETAILS" FilterParameters: [ { Field: "proposed_aws_location", Operator: "EQUALS", Values: ["us-west-2"] }, ] } Results: [San Jose, San Jose-Santa Clara, California, United States, 7922, us-east-1, 40, 350, 350, us-west-2, 45] [San Jose, San Jose-Santa Clara, California, United States, 7922, us-west-1, 35, 450, 450, us-west-2, 45]

Beispiel 7

Bei diesem letzten Beispiel sollen Daten für bestimmte DNS-Resolver abgerufen werden.

Im Folgenden finden Sie eine Beispielabfrage für dieses Szenario:

{ MonitorName: "TestMonitor" StartTime: "2023-07-12T20:00:00Z" EndTime: "2023-07-12T21:00:00Z" QueryType: "ROUTING_SUGGESTIONS" FilterParameters: [ { Field: "proposed_aws_location", Operator: "EQUALS", Values: ["us-east-1"] }, ] } Results: [162.158.180.245, 13335, Cloudflare, [5.4.0.0/14], us-east-2, 200.0, us-east-1, 160.0] [162.158.180.243, 13313, Cloudflare, [5.4.0.0/10], us-east-2, 150.0, us-east-1, 125.0]

Abfrageergebnisse abrufen

Nachdem Sie eine Abfrage definiert haben, können Sie eine Reihe von Ergebnissen mit der Abfrage zurückgeben, indem Sie einen weiteren Internet Monitor-API-Vorgang ausführen, GetQueryResults. Bei der Ausführung von GetQueryResults geben Sie die Abfrage-ID für die von Ihnen definierte Abfrage zusammen mit dem Namen Ihres Monitors an. GetQueryResults ruft Daten für die angegebene Abfrage in einen Ergebnissatz ab.

Vergewissern Sie sich beim Ausführen einer Abfrage, dass die Ausführung der Abfrage abgeschlossen ist, bevor Sie GetQueryResults verwenden, um die Ergebnisse anzusehen. Mithilfe des GetQueryStatusAPI-Vorgangs können Sie feststellen, ob die Abfrage abgeschlossen wurde. Wenn der Status für die Abfrage SUCCEEDED ist, können Sie mit der Überprüfung der Ergebnisse fortfahren.

Wenn Ihre Abfrage abgeschlossen ist, können Sie die folgenden Informationen verwenden, um die Ergebnisse zu überprüfen. Jeder Abfragetyp, den Sie zum Erstellen einer Abfrage verwenden, enthält einen eindeutigen Satz von Datenfeldern aus den Protokolldateien, wie in der folgenden Liste beschrieben:

Messungen

Der Abfragetyp measurements gibt die folgenden Daten zurück:

timestamp, availability, performance, bytes_in, bytes_out, rtt_p50, rtt_p90, rtt_p95

Top-Standorte

Der Abfragetyp top locations gruppiert Daten nach Standort und stellt die über den Zeitraum gemittelten Daten bereit. Die zurückgegebenen Daten umfassen Folgendes:

aws_location, city, metro, subdivision, country, asn, availability, performance, bytes_in, bytes_out, current_fbl, best_ec2, best_ec2_region, best_cf_fbl

Beachten Sie, dass city, metro und subdivision nur zurückgegeben werden, wenn Sie diesen Standorttyp für das geo-Feld wählen. Je nach dem Standorttyp, den Sie angeben, werden die folgenden Standortfelder für geo zurückgegeben:

city = city, metro, subdivision, country metro = metro, subdivision, country subdivision = subdivision, country country = country
Top-Standort-Details

Der Abfragetyp top locations details gibt Daten nach Stunden gruppiert zurück. Die Abfrage gibt die folgenden Daten zurück:

timestamp, current_service, current_fbl, best_ec2_fbl, best_ec2_region, best_cf_fbl

Allgemeine Vorschläge zum Datenverkehr

Der Abfragetyp overall traffic suggestions gibt Daten nach Stunden gruppiert zurück. Die Abfrage gibt die folgenden Daten zurück:

current_aws_location, proposed_aws_location, average_fbl, traffic, optimized_traffic_excluding_cf, optimized_traffic_including_cf

Details zu allgemeinen Vorschlägen zum Datenverkehr

Der Abfragetyp overall traffic suggestions details gibt Daten nach Stunden gruppiert zurück. Die Abfrage gibt die folgenden Daten zurück:

aws_location, city, metro, subdivision, country, asn, traffic, current_aws_location, fbl_data

Routing-Vorschläge

Der Abfragetyp routing suggestions gibt Daten nach Stunden gruppiert zurück. Die Abfrage gibt die folgenden Daten zurück:

dns_resolver_ip, dns_resolver_asn, dns_resolver_isp, ipv4_prefixes, current_aws_location, current_latency, proposed_aws_location, proposed_latency

Wenn Sie den API-Vorgang GetQueryResults ausführen, gibt Internet Monitor in der Antwort Folgendes zurück:

  • Ein Datenzeichenfolge-Array, das die Ergebnisse enthält, die die Abfrage zurückgibt. Die Informationen werden in Arrays zurückgegeben, die auf das Feld Fields ausgerichtet sind. Dies wird auch durch den API-Aufruf zurückgegeben. Mithilfe des Fields-Felds können Sie die Informationen aus dem Data-Repository analysieren und sie dann für Ihre Zwecke weiter filtern oder sortieren.

  • Ein Array von Feldern, das die Felder auflistet, für die die Abfrage Daten zurückgegeben hat (in der Data-Feldantwort). Jedes Element im Array ist ein Name-Datentyp-Paar, z. B. availability_score-float.

Fehlerbehebung

Wenn bei der Verwendung von API-Vorgängen für die Abfrageschnittstelle Fehler zurückgegeben werden, stellen Sie sicher, dass Sie über die erforderlichen Berechtigungen für die Verwendung von Internet Monitor verfügen. Stellen Sie insbesondere sicher, dass Sie über die folgenden Berechtigungen verfügen:

internetmonitor:StartQuery internetmonitor:GetQueryStatus internetmonitor:GetQueryResults internetmonitor:StopQuery

Diese Berechtigungen sind in der empfohlenen AWS Identity and Access Management Richtlinie für die Verwendung des Internet Monitor-Dashboards in der Konsole enthalten. Weitere Informationen finden Sie unter AWS verwaltete Richtlinien für Internet Monitor.