SDK de AWS X-Ray para Go - 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.

SDK de AWS X-Ray para Go

El SDK de X-Ray para Go es un conjunto de bibliotecas para aplicaciones Go que proporcionan clases y métodos para generar y enviar datos de rastreo al daemon de X-Ray. En los datos de rastreo se incluye información sobre las solicitudes HTTP entrantes que atiende la aplicación, además de las llamadas que la aplicación realiza a servicios posteriores mediante el SDK de AWS, clientes HTTP o un conector a la base de datos SQL. También puede crear segmentos de forma manual y agregar información de depuración en anotaciones y metadatos.

Descargue el SDK desde su repositorio de GitHub con go get:

$ go get -u github.com/aws/aws-xray-sdk-go/...

Para las aplicaciones web, comience por utilizar la función xray.Handler para realizar el seguimiento de las solicitudes entrantes. El controlador de mensajes crea un segmento para cada solicitud rastreada y lo completa cuando se envía la respuesta. Mientras el segmento está abierto, puede utilizar los métodos del cliente del SDK para añadir información al segmento y crear subsegmentos para rastrear llamadas posteriores. El SDK también registra automáticamente las excepciones que produce su aplicación mientras el segmento está abierto.

En el caso de las funciones de Lambda llamadas por una aplicación o un servicio instrumentados, Lambda lee el encabezado de rastreo y rastrea automáticamente las solicitudes muestreadas. Para otras funciones, puede configurar Lambda con el fin de muestrear y rastrear las solicitudes entrantes. En cualquier caso, Lambda crea el segmento y se lo proporciona al SDK de X-Ray.

nota

En Lambda, el SDK de X-Ray es opcional. Si no lo usa en su función, el mapa de servicio seguirá incluyendo un nodo para el servicio de Lambda y uno para cada función de Lambda. Al añadir el SDK, puede instrumentar el código de función para añadir subsegmentos al segmento de función registrado por Lambda. Para obtener más información, consulte AWS Lambda y AWS X-Ray.

A continuación, envuelva su cliente con una llamada a la función AWS. Este paso garantiza que X-Ray instrumente las llamadas a los métodos del cliente. También puede instrumentar llamadas a bases de datos SQL.

En cuanto empiece a utilizar el SDK, personalice su comportamiento configurando la grabadora y el controlador y el middleware. Puede añadir complementos para registrar los datos sobre los recursos informáticos que ejecutan su aplicación, personalizar el comportamiento de muestreo mediante la definición de reglas de muestreo y definir el nivel de log para ver más o menos información del SDK en los logs de las aplicaciones.

Registre información adicional acerca de las solicitudes y el trabajo que la aplicación realiza en anotaciones y metadatos. Las anotaciones son pares sencillos de clave-valor que se indexan para su uso con expresiones de filtro para poder buscar rastros que contengan datos específicos. Las entradas de metadatos son menos restrictivas y pueden registrar objetos y matrices completos, es decir, todo lo que se pueda serializar en JSON.

Anotaciones y metadatos

Las anotaciones y los metadatos son texto arbitrario que se agrega a los segmentos con el SDK de X-Ray. Las anotaciones se indexan para su uso con expresiones de filtro. Los metadatos no se indexan pero se pueden ver en el segmento sin procesar con la consola o la API de X-Ray. Cualquier persona a la que conceda acceso de lectura a X-Ray puede ver estos datos.

Cuando tenga muchos clientes instrumentados en su código, un único segmento de solicitud puede contener un gran número de subsegmentos, uno para cada llamada realizada con un cliente instrumentado. Puede organizar y agrupar los subsegmentos incluyendo las llamadas del cliente en subsegmentos personalizados. Puede crear un subsegmento personalizado para una función completa o para cualquier sección de código, y registrar los metadatos y las anotaciones en el subsegmento en lugar de escribirlo todo en el segmento principal.

Requisitos

El SDK de X-Ray para Go requiere Go 1.9 o una versión posterior.

El SDK depende de las siguientes bibliotecas durante la compilación y el tiempo de ejecución:

  • SDK de AWS para Go versión 1.10.0 o más reciente

Estas dependencias se han declarado en el archivo README.md del SDK.

Documentación de referencia

Una vez que haya descargado el SDK, compile y aloje la documentación localmente para verla en un navegador web.

Para ver la documentación de referencia
  1. Vaya al directorio $GOPATH/src/github.com/aws/aws-xray-sdk-go (Linux o Mac) o la carpeta %GOPATH%\src\github.com\aws\aws-xray-sdk-go (Windows)

  2. Ejecute el comando godoc.

    $ godoc -http=:6060
  3. Abra un navegador en http://localhost:6060/pkg/github.com/aws/aws-xray-sdk-go/.