Suivi des appels aux services Web HTTP en aval avec le SDK X-Ray pour .NET - AWS X-Ray

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.

Suivi des appels aux services Web HTTP en aval avec le SDK X-Ray pour .NET

Note

End-of-support avis — Le 25 février 2027, AWS X-Ray cessera de prendre en charge AWS X-Ray SDKs et Daemon. Après le 25 février 2027, vous ne recevrez plus de mises à jour ni de versions. Pour plus d'informations sur le calendrier de support, consultezChronologie de fin de support du SDK et du daemon X-Ray. Nous vous recommandons de migrer vers OpenTelemetry. Pour plus d'informations sur la migration vers OpenTelemetry, voir Migration de l'instrumentation X-Ray vers OpenTelemetry l'instrumentation.

Lorsque votre application appelle des microservices ou du protocole HTTP public APIs, vous pouvez utiliser la méthode d'GetResponseTracedextension du SDK X-Ray pour .NET pour System.Net.HttpWebRequest instrumenter ces appels et ajouter l'API au graphe de service en tant que service en aval.

Exemple 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(); }

Pour les appels asynchrones, utilisez GetAsyncResponseTraced.

request.GetAsyncResponseTraced();

Si vous utilisez system.net.http.httpclient, utilisez le gestionnaire de délégation HttpClientXRayTracingHandler pour enregistrer les appels.

Exemple 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); }

Lorsque vous instrumentez un appel à une API Web en aval, le SDK X-Ray pour .NET enregistre un sous-segment contenant des informations sur la requête et la réponse HTTP. X-Ray utilise le sous-segment pour générer un segment inféré pour l'API.

Exemple Sous-segment pour un appel HTTP en aval
{ "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 } } }
Exemple Segment déduit pour un appel HTTP en aval
{ "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 }