Ajoutez des annotations et des métadonnées aux segments avec le X-Ray SDK for. 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.

Ajoutez des annotations et des métadonnées aux segments avec le X-Ray SDK for. NET

Vous pouvez enregistrer des informations supplémentaires sur les demandes, l'environnement ou votre application à l'aide d'annotations et de métadonnées. Vous pouvez ajouter des annotations et des métadonnées aux segments SDK créés par le X-Ray ou aux sous-segments personnalisés que vous créez.

Les annotations sont des paires clé-valeur avec des chaînes, des nombres ou des valeurs booléennes. Les annotations sont indexées pour être utilisées avec les expressions de filtre. Utilisez des annotations pour enregistrer les données que vous souhaitez utiliser pour regrouper les traces dans la console ou lorsque vous appelez le GetTraceSummariesAPI.

Les métadonnées sont des paires clé-valeur qui peuvent contenir des valeurs de n'importe quel type, y compris des objets et des listes, mais qui ne sont pas indexées pour être utilisées avec des expressions de filtre. Utilisez les métadonnées pour enregistrer des données supplémentaires que vous souhaitez stocker dans le traçage, mais que vous n'avez pas besoin d'utiliser pour la recherche.

Enregistrer des annotations avec le X-Ray SDK pour. NET

Utilisez les annotations pour enregistrer les informations sur les segments ou sous-segments qui doivent être indexés pour la recherche.

Les éléments suivants sont requis pour toutes les annotations dans X-Ray :

Exigences liées aux annotations
  • Clés — La clé d'une annotation X-Ray peut comporter jusqu'à 500 caractères alphanumériques. Vous ne pouvez pas utiliser d'espaces ou de symboles autres qu'un point ou un point (.)

  • Valeurs — La valeur d'une annotation X-Ray peut comporter jusqu'à 1 000 caractères Unicode.

  • Nombre d'annotations : vous pouvez utiliser jusqu'à 50 annotations par trace.

Pour enregistrer des annotations en dehors d'une fonction AWS Lambda
  1. Obtenez une instance de AWSXRayRecorder.

    using Amazon.XRay.Recorder.Core; ... AWSXRayRecorder recorder = AWSXRayRecorder.Instance;
  2. Appelez addAnnotation avec une clé de type chaîne et une valeur de type booléen, Int32, Int64, Double ou chaîne.

    recorder.AddAnnotation("mykey", "my value");

    L'exemple suivant montre comment appeler putAnnotation avec une clé String qui inclut un point et une valeur booléenne, numérique ou de chaîne.

    document.putAnnotation("testkey.test", "my value");
Pour enregistrer des annotations dans une fonction AWS Lambda

Les segments et sous-segments d'une fonction Lambda sont gérés par l'environnement d'exécution Lambda. Si vous souhaitez ajouter une annotation à un segment ou à un sous-segment dans une fonction Lambda, vous devez effectuer les opérations suivantes :

  1. Créez le segment ou le sous-segment dans la fonction Lambda.

  2. Ajoutez l'annotation au segment ou au sous-segment.

  3. Terminez le segment ou le sous-segment.

L'exemple de code suivant montre comment ajouter une annotation à un sous-segment dans une fonction Lambda :

#Create the subsegment AWSXRayRecorder.Instance.BeginSubsegment("custom method"); #Add an annotation AWSXRayRecorder.Instance.AddAnnotation("My", "Annotation"); try { YourProcess(); #Your function } catch (Exception e) { AWSXRayRecorder.Instance.AddException(e); } finally #End the subsegment { AWSXRayRecorder.Instance.EndSubsegment(); }

Le X-Ray SDK enregistre les annotations sous forme de paires clé-valeur dans un annotations objet du document segmenté. Le fait d'appeler l'addAnnotationopération deux fois avec la même clé remplace une valeur précédemment enregistrée sur le même segment ou sous-segment.

Pour rechercher les suivis ayant des annotations avec des valeurs spécifiques, utilisez le mot clé annotation[key] dans une expression de filtre.

Enregistrement de métadonnées avec le X-Ray SDK pour. NET

Utilisez les métadonnées pour enregistrer des informations sur des segments ou des sous-segments que vous n'avez pas besoin d'indexer pour les utiliser dans le cadre d'une recherche. Les valeurs de métadonnées peuvent être des chaînes, des nombres, des booléens ou tout autre objet pouvant être sérialisé dans un JSON objet ou un tableau.

Pour enregistrer les métadonnées
  1. Obtenez une instance deAWSXRayRecorder, comme indiqué dans l'exemple de code suivant :

    using Amazon.XRay.Recorder.Core; ... AWSXRayRecorder recorder = AWSXRayRecorder.Instance;
  2. Appelez AddMetadata avec un espace de noms de chaîne, une clé de chaîne et une valeur d'objet, comme indiqué dans l'exemple de code suivant :

    recorder.AddMetadata("my namespace", "my key", "my value");

    Vous pouvez également appeler l'AddMetadataopération en utilisant simplement une paire clé/valeur, comme illustré dans l'exemple de code suivant :

    recorder.AddMetadata("my key", "my value");

Si vous ne spécifiez aucune valeur pour l'espace de noms, le X-Ray l'SDKutilisedefault. Le fait d'appeler l'AddMetadataopération deux fois avec la même clé remplace une valeur précédemment enregistrée sur le même segment ou sous-segment.