Suivi des appels vers des services web HTTP en aval avec le kit 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 vers des services web HTTP en aval avec le kit SDK X-Ray pour .NET

Lorsque votre application effectue des appels vers des microservices ou des API HTTP publiques, vous pouvez utiliser Kit SDK X-Ray pour .NETGetResponseTracedméthode d'extension pourSystem.Net.HttpWebRequestpour instrumenter ces appels et ajouter l'API au graphique de services 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 vers une API web en aval, le kit SDK X-Ray pour .NET enregistre un sous-segment avec des informations sur la demande et la réponse HTTP. X-Ray utilise les sous-segments pour générer un segment déduit 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 }