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.
Verfolgen von Aufrufen an Downstream-HTTP-Webservices mit dem X-Ray SDK for .NET
Anmerkung
End-of-support Hinweis — Am 25. Februar 2027 wird AWS X-Ray die Unterstützung für AWS X-Ray SDKs und Daemon einstellen. Nach dem 25. Februar 2027 werden Sie keine Updates oder Releases mehr erhalten. Weitere Informationen zum Zeitplan für den Support finden Sie unterZeitplan für das Ende des Supports für X-Ray SDK und Daemon. Wir empfehlen die Migration zu OpenTelemetry. Weitere Informationen zur Migration zu OpenTelemetry finden Sie unter Migration von X-Ray-Instrumentierung zu OpenTelemetry Instrumentierung.
Wenn Ihre Anwendung Microservices oder öffentliches HTTP aufruft APIs, können Sie die GetResponseTraced
Erweiterungsmethode des X-Ray-SDK für .NET verwenden, System.Net.HttpWebRequest
um diese Aufrufe zu instrumentieren und die API als Downstream-Service zum Service Graph hinzuzufügen.
Beispiel HttpWebRequest
using System.Net; using Amazon.XRay.Recorder.Core; using Amazon.XRay.Recorder.Handlers.System.Net; private void MakeHttpRequest() { HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://names.example.com/api");
request.GetResponseTraced();
}
Für asynchrone Aufrufe verwenden Sie GetAsyncResponseTraced
.
request.GetAsyncResponseTraced();
Zeichnen Sie bei der Verwendung von system.net.http.httpclient
HttpClientXRayTracingHandler
-Handler auf.
Beispiel HttpClient
using System.Net.Http; using Amazon.XRay.Recorder.Core; using Amazon.XRay.Recorder.Handlers.System.Net; private void MakeHttpRequest() { var httpClient = new HttpClient(
new HttpClientXRayTracingHandler(new HttpClientHandler())
); httpClient.GetAsync(URL); }
Wenn Sie einen Aufruf einer Downstream-Web-API instrumentieren, zeichnet das X-Ray SDK for .NET ein Untersegment mit Informationen über die HTTP-Anfrage und -Antwort auf. X-Ray verwendet das Untersegment, um ein abgeleitetes Segment für die API zu generieren.
Beispiel Untersegment für einen nachgelagerten HTTP-Aufruf
{
"id": "004f72be19cddc2a",
"start_time": 1484786387.131,
"end_time": 1484786387.501,
"name": "names.example.com",
"namespace": "remote",
"http": {
"request": {
"method": "GET",
"url": "https://names.example.com/"
},
"response": {
"content_length": -1,
"status": 200
}
}
}
Beispiel Abgeleitetes Segment für einen nachgelagerten HTTP-Anruf
{
"id": "168416dc2ea97781",
"name": "names.example.com",
"trace_id": "1-62be1272-1b71c4274f39f122afa64eab",
"start_time": 1484786387.131,
"end_time": 1484786387.501,
"parent_id": "004f72be19cddc2a",
"http": {
"request": {
"method": "GET",
"url": "https://names.example.com/"
},
"response": {
"content_length": -1,
"status": 200
}
},
"inferred": true
}