Agregue anotaciones y metadatos a los segmentos con el SDK de X-Ray para .NET - AWS X-Ray

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Agregue anotaciones y metadatos a los segmentos con el SDK de X-Ray para .NET

Puede usar anotaciones y metadatos para registrar información adicional sobre las solicitudes, el entorno o la aplicación. Puede añadir anotaciones y metadatos a los segmentos que crea el SDK de X-Ray o a los subsegmentos personalizados que cree usted mismo.

Las anotaciones son pares de clave-valor con valores de cadena, numéricos o booleanos. Las anotaciones se indexan para su uso con expresiones de filtro. Utilice anotaciones para registrar los datos que desee utilizar para agrupar rastros en la consola o cuando llame a la API de GetTraceSummaries.

Los metadatos son pares de clave-valor con valores de cualquier tipo, por ejemplo objetos y listas, pero que no se indexan para utilizarlos con expresiones de filtro. Utilice los metadatos para registrar datos adicionales que desee almacenar en el rastro, pero que no necesite usar para hacer búsquedas.

Registro de anotaciones con el SDK de X-Ray para .NET

Utilice anotaciones para registrar información sobre segmentos o subsegmentos que desee indexar para las búsquedas.

Se requiere lo siguiente para todas las anotaciones de X-Ray:

Requisitos de anotación
  • Teclas: la clave de una anotación de X-Ray puede tener hasta 500 caracteres alfanuméricos. No puede utilizar espacios ni símbolos distintos del símbolo de subrayado (_).

  • Valores: el valor de una anotación de X-Ray puede tener hasta 1000 caracteres Unicode.

  • Número de anotaciones: puede utilizar hasta 50 anotaciones por traza.

Para grabar anotaciones fuera de una función AWS Lambda
  1. Obtenga una instancia de AWSXRayRecorder.

    using Amazon.XRay.Recorder.Core; ... AWSXRayRecorder recorder = AWSXRayRecorder.Instance;
  2. Llame a addAnnotation con una clave de cadena y un valor booleano, Int32, Int64, doble o de cadena.

    recorder.AddAnnotation("mykey", "my value");
Para grabar anotaciones dentro de una función AWS Lambda

Tanto los segmentos como los subsegmentos de una función Lambda se administran mediante el entorno de ejecución de Lambda. Si desea añadir una anotación a un segmento o subsegmento dentro de una función Lambda, debe hacer lo siguiente:

  1. Cree el segmento o subsegmento dentro de la función Lambda.

  2. Añada la anotación al segmento o subsegmento.

  3. Finalice el segmento o subsegmento.

El siguiente ejemplo de código muestra cómo añadir una anotación a un subsegmento dentro de una función 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(); }

El SDK de X-Ray registra las anotaciones como pares clave-valor en un annotations objeto del documento de segmento. Si se llama a la addAnnotation operación dos veces con la misma clave, se sobrescribe un valor previamente registrado en el mismo segmento o subsegmento.

Para buscar trazas que tengan anotaciones con valores específicos, utilice la annotations.key palabra clave en una expresión de filtro. Para obtener más información, consulte Utilice expresiones de filtro.

Registro de metadatos con el SDK de X-Ray para .NET

Usa los metadatos para registrar información sobre segmentos o subsegmentos que no necesites indexar para utilizarla en una búsqueda. Los valores de los metadatos pueden ser cadenas, números, valores booleanos o cualquier otro objeto que se pueda serializar en un objeto o matriz JSON.

Para registrar metadatos
  1. Obtenga una instancia deAWSXRayRecorder, como se muestra en el siguiente ejemplo de código:

    using Amazon.XRay.Recorder.Core; ... AWSXRayRecorder recorder = AWSXRayRecorder.Instance;
  2. Llama AddMetadata con un espacio de nombres de cadena, una clave de cadena y un valor de objeto, como se muestra en el siguiente ejemplo de código:

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

    También puede llamar a la AddMetadata operación utilizando solo un par de clave y valor, como se muestra en el siguiente ejemplo de código:

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

Si no especificas un valor para el espacio de nombres, el SDK de X-Ray lo utilizará. default Si se llama a la AddMetadata operación dos veces con la misma clave, se sobrescribe un valor previamente registrado en el mismo segmento o subsegmento.