Wird verwendet AWS X-Ray , um Anfragen zu verfolgen in AWS AppSync - AWS AppSync GraphQL

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.

Wird verwendet AWS X-Ray , um Anfragen zu verfolgen in AWS AppSync

Sie können AWS X-Raydamit Anfragen verfolgen, während sie in AWS AppSync ausgeführt werden. Sie können X-Ray AWS AppSync in allen AWS Regionen verwenden, in denen X-Ray verfügbar ist. X-Ray gibt Ihnen einen detaillierten Überblick über eine gesamte GraphQL-Anfrage. Auf diese Weise können Sie Latenzen in Ihren APIs und den ihnen zugrunde liegenden Resolvern und Datenquellen analysieren. Sie können eine X-Ray-Servicekarte verwenden, um die Latenz einer Anfrage anzuzeigen, einschließlich aller AWS Dienste, die in X-Ray integriert sind. Sie können auch Sampling-Regeln konfigurieren, um X-Ray gemäß den von Ihnen angegebenen Kriterien mitzuteilen, welche Anfragen aufgezeichnet werden sollen und mit welchen Abtastraten.

Weitere Informationen zur Probennahme in X-Ray finden Sie unter Konfiguration von Sampling-Regeln in der AWS X-Ray Konsole.

Einrichtung und Konfiguration

Sie können X-Ray-Tracing für GraphQL API über die AWS AppSync Konsole aktivieren.

  1. Melden Sie sich bei der Konsole an AWS AppSync .

  2. Wählen Sie im Navigationsbereich die Option Settings (Einstellungen) aus.

  3. Aktivieren Sie unter X-Ray die Option Enable X-Ray (X-Ray aktivieren).

  4. Wählen Sie Save (Speichern) aus. X-Ray Tracing ist jetzt für Sie API aktiviert.

Wenn Sie das AWS CLI oder verwenden AWS CloudFormation, können Sie die Röntgenverfolgung auch aktivieren AWS AppSync API, wenn Sie eine neue erstellen oder eine bestehende aktualisieren AWS AppSync API, indem Sie die xrayEnabled Eigenschaft auf true setzen.

Wenn X-Ray Tracing für eine aktiviert ist AWS AppSync API, wird in Ihrem Konto automatisch eine AWS Identity and Access Management serviceverknüpfte Rolle mit den entsprechenden Berechtigungen erstellt. Dies ermöglicht es AWS AppSync , Spuren auf sichere Weise an X-Ray zu senden.

APIMit X-Ray auf Ihrer Spur

Sampling

Mithilfe von Sampling-Regeln können Sie die Menge der aufgenommenen Daten kontrollieren und das Sampling-Verhalten spontan ändern AWS AppSync, ohne Ihren Code ändern oder erneut bereitstellen zu müssen. Diese Regel führt beispielsweise Stichproben von Anfragen an GraphQL API mit der API ID 3n572shhcpfokwhdnq1ogu59v6 durch.

  • Regelnametest-sample

  • Priorität10

  • Reservoirgröße10

  • Bestimmtes Zeitintervall10

  • Service-Name*

  • ServicetypAWS::AppSync::GraphQLAPI

  • HTTPMethode*

  • Ressource ARNarn:aws:appsync:us-west-2:123456789012:apis/3n572shhcpfokwhdnq1ogu59v6

  • Host*

Grundlegendes zu Ablaufverfolgungen

Wenn Sie X-Ray Tracing für Ihr GraphQL aktivierenAPI, können Sie die X-Ray-Trace-Detailseite verwenden, um detaillierte Latenzinformationen zu Anfragen an Ihren zu überprüfen. API Das folgende Beispiel zeigt die Ablaufverfolgungsansicht zusammen mit der Servicezuordnung für diese spezielle Anforderung. Die Anfrage wurde an einen Anrufer postAPI mit einem Post-Typ gestellt, dessen Daten in einer Amazon DynamoDB-Tabelle API namens enthalten sind. PostTable-Example

Das folgende Ablaufverfolgungsbild entspricht der folgenden GraphQL-Abfrage:

query getPost { getPost(id: "1") { id title } }

Der Resolver für die getPost Abfrage verwendet die zugrunde liegende DynamoDB-Datenquelle. Die folgende Trace-Ansicht zeigt den Aufruf von DynamoDB sowie die Latenzen verschiedener Teile der Abfrageausführung:

Trace view showing client request, postAPI, and DynamoDB with durations and request details.
  • Im vorhergehenden Bild repräsentiert /getPost den vollständigen Pfad zu dem Element, das aufgelöst wird. Da es sich in diesem Fall bei getPost um ein Feld für den Stammtyp Query handelt, wird es direkt nach dem Stamm des Pfades angezeigt.

  • requestMappingTemplateEvaluationstellt die Zeit dar, die für die AWS AppSync Auswertung der Vorlage zur Anforderungszuweisung für dieses Element in der Abfrage aufgewendet wurde.

  • Query.getPost repräsentiert einen Typ und ein Feld (im Format Type.field). Es kann mehrere Untersegmente enthalten, abhängig von der Struktur der Anfrage API und der verfolgten Anfrage.

    • DynamoDB repräsentiert die Datenquelle, die mit diesem Resolver verknüpft ist. Es enthält die Latenz für den Netzwerkaufruf an DynamoDB zur Auflösung des Felds.

    • responseMappingTemplateEvaluationstellt die Zeit dar, die für die AWS AppSync Auswertung der Antwortzuordnungsvorlage für dieses Element in der Abfrage aufgewendet wurde.

Wenn Sie Traces in X-Ray anzeigen, können Sie zusätzliche Kontext- und Metadateninformationen zu den Untersegmenten im AWS AppSync Segment abrufen, indem Sie die Untersegmente auswählen und die Detailansicht erkunden.

Beachten Sie bei bestimmten tief verschachtelten oder komplexen Abfragen, dass das von an X-Ray gelieferte Segment größer sein AWS AppSync kann als die maximale Größe, die für Segmentdokumente zulässig ist, wie in AWS X-Ray Segmentdokumente definiert. X-Ray zeigt keine Segmente an, die den Grenzwert überschreiten.