Rastreo activo en Amazon SNS - Amazon Simple Notification Service

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.

Rastreo activo en Amazon SNS

Puedes utilizarla AWS X-Ray para rastrear y analizar las solicitudes de los usuarios a medida que recorren tus SNS temas de Amazon hasta tus suscripciones de Amazon Data FirehoseSQS, AWS LambdaAmazon y HTTP/S Endpoint. Como X-Ray te permite end-to-end ver una solicitud completa, puedes ver qué es lo que llama tu SNS tema de Amazon y qué es lo que está después de las suscripciones de tu tema. Puede analizar las latencias de sus mensajes y sus servicios backend (por ejemplo, cuánto tiempo pasa una solicitud en un tema y cuánto tiempo ha tardado en enviar el mensaje a cada una de las suscripciones del tema).

importante

Es posible que SNS los temas de Amazon con numerosas suscripciones alcancen un límite de tamaño y no se puedan rastrear por completo. Para obtener información sobre los límites de tamaño de los documentos de rastreo, consulta las cuotas de servicio de rayos X en la Referencia AWS general.

Si llamas a un Amazon SNS API desde un servicio que ya está siendo rastreado, Amazon SNS pasa el rastreo, incluso si el rastreo de X-Ray no está habilitado en elAPI.

Amazon SNS admite el rastreo de rayos X tanto para estándares como por FIFO temas. Puedes activar X-Ray para un SNS tema de Amazon mediante la SNSconsola de Amazon, Amazon SNS SetTopicAttributesAPI, Amazon Simple Notification Service CLI Reference o AWS CloudFormation.

Para obtener más información sobre el uso de Amazon SNS con X-Ray, consulta Amazon SNS y AWS X-Ray la Guía para AWS X-Ray desarrolladores.

Permisos de rastreo activo

Al utilizar la SNS consola de Amazon, Amazon SNS intenta crear los permisos necesarios para que el SNS tema de Amazon llame a X-Ray. El intento se puede rechazar si no tienes permisos suficientes para usar la SNS consola de Amazon. Para obtener más información, consulte Gestión de identidades y accesos en Amazon SNS y Ejemplos de casos de control de SNS acceso de Amazon.

Al usar elCLI, debes configurar los permisos manualmente. Estos permisos se configuran mediante políticas de recursos. Para obtener más información sobre el uso de los permisos necesarios en X-Ray, consulta Amazon SNS y AWS X-Ray.

Habilitar el rastreo activo en un SNS tema de Amazon mediante la consola AWS

Cuando el rastreo activo está activado en un SNS tema de Amazon, lee el ID de rastreo, envía los datos al cliente en función del ID de rastreo y propaga el ID de rastreo a los servicios descendentes.

  1. Inicia sesión en la SNSconsola de Amazon.

  2. Elija un tema o cree uno nuevo. Para obtener más información sobre la creación de temas, consulta Crear un SNS tema de Amazon.

  3. En la página Crear tema, en la sección Detalles, elige un tipo de tema: FIFOo Estándar.

    1. Ingrese un nombre para el nuevo tema.

    2. (Opcional) Ingrese un nombre para mostrar para el tema.

  4. Expanda Active tracing (Rastreo activo) y seleccione Use active tracing (Usar rastreo activo).

Una vez que hayas activado X-Ray para tu SNS tema de Amazon, puedes usar el mapa del servicio de X-Ray para ver las end-to-end trazas y los mapas de servicio del tema.

Habilitar el rastreo activo en un SNS tema de Amazon mediante el AWS SDK

El siguiente ejemplo de código muestra cómo habilitar el rastreo activo en un SNS tema de Amazon mediante el uso de AWS SDK para Java.

public static void enableActiveTracing(SnsClient snsClient, String topicArn) { try { SetTopicAttributesRequest request = SetTopicAttributesRequest.builder() .attributeName("TracingConfig") .attributeValue("Active") .topicArn(topicArn) .build(); SetTopicAttributesResponse result = snsClient.setTopicAttributes(request); System.out.println("\n\nStatus was " + result.sdkHttpResponse().statusCode() + "\n\nTopic " + request.topicArn() + " updated " + request.attributeName() + " to " + request.attributeValue()); } catch (SnsException e) { System.err.println(e.awsErrorDetails().errorMessage()); } }

Habilitar el rastreo activo en un SNS tema de Amazon mediante el AWS CLI

El siguiente ejemplo de código muestra cómo habilitar el rastreo activo en un SNS tema de Amazon mediante. AWS CLI

aws sns set-topic-attributes \ --topic-arn arn:aws:sns:us-west-2:123456789012:MyTopic \ --attribute-name TracingConfig \ --attribute-value Active

Habilitar el rastreo activo en un SNS tema de Amazon mediante AWS CloudFormation

La siguiente AWS CloudFormation pila muestra cómo habilitar el rastreo activo en un SNS tema de Amazon.

AWSTemplateFormatVersion: 2010-09-09 Resources: MyTopicResource: Type: 'AWS::SNS::Topic' Properties: TopicName: 'MyTopic' TracingConfig: 'Active'

Verificación de que el rastreo activo está habilitado para su tema

Puedes usar la SNS consola de Amazon para comprobar si el seguimiento activo está activado para tu tema o si no se ha podido añadir la política de recursos.

  1. Inicia sesión en la SNSconsola de Amazon.

  2. En el panel de navegación izquierdo, elija Topics (Temas).

  3. Elija un tema en la página Topics (Temas).

  4. Elija la pestaña Integrations (Integraciones).

    Cuando el rastreo activo está habilitado, aparece un icono Active (Activo) de color verde.

  5. Si ha habilitado el rastreo activo y no ve que se haya añadido la política de recursos, elija Create policy (Crear política) para añadir los permisos adicionales necesarios.

Captura de pantalla que muestra los detalles de un SNS tema de Amazon llamado SampleTopic "» en AWS Management Console. Indica que el rastreo AWS X-Ray activo está habilitado para este tema, pero falta una política de recursos que permita SNS a Amazon enviar datos de rastreo. Se incluye el botón «Crear política» para resolver este problema.

Prueba del rastreo activo

  1. Inicia sesión en la SNSconsola de Amazon.

  2. Crea un SNS tema de Amazon. Para obtener más detalles sobre cómo hacerlo, consulte Para crear un tema utilizando el AWS Management Console.

  3. Expanda Active tracing (Rastreo activo) y seleccione Use active tracing (Usar rastreo activo).

  4. Publica un mensaje en el SNS tema de Amazon. Para obtener más detalles sobre cómo hacerlo, consulte Para publicar mensajes en los SNS temas de Amazon mediante la AWS Management Console.

  5. Utilice el mapa del servicio de X-Ray para ver las end-to-end trazas y los mapas de servicio del tema.

Muestra un mapa de AWS X-Ray servicios que muestra el seguimiento de una solicitud que fluye desde un cliente a un SNS tema de Amazon denominado»xray-topic». Desde allí, el mensaje se distribuye a varios servicios descendentes, como una SQS cola de Amazon, una función Lambda, una manguera de incendios de Kinesis y un servicio remoto. Cada conexión muestra métricas como la latencia en milisegundos (ms) y la tasa de transacciones por minuto (t/min), lo que ayuda a analizar el rendimiento e identificar cualquier problema de latencia en el proceso de entrega de mensajes.