

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
<a name="sns-active-tracing"></a>

Úselo AWS X-Ray para rastrear y analizar las solicitudes de los usuarios a medida que pasan de sus temas de Amazon SNS a [Amazon Data Firehose](sns-firehose-as-subscriber.md), Amazon [AWS Lambda](https://docs.aws.amazon.com/xray/latest/devguide/xray-services-lambda.html)SQS y suscripciones de [endpoints](https://docs.aws.amazon.com/xray/latest/devguide/xray-services-sqs.html). HTTP/S 

Con X-Ray, obtiene una end-to-end vista de cada solicitud, lo que le permite:
+ Identificar qué es lo que llama a su tema de Amazon SNS y qué servicios son descendentes de sus suscripciones.
+ Analizar las latencias, como por ejemplo:
  + Tiempo dedicado al tema de Amazon SNS antes de procesarlo.
  + Tiempos de entrega para cada punto de conexión suscrito.

**importante**  
Es posible que los temas de Amazon SNS con numerosas suscripciones alcancen el límite de tamaño y no se rastreen por completo. Para obtener información sobre los límites de tamaño de los documentos de rastreo, consulte [las cuotas de servicio de rayos X](https://docs.aws.amazon.com/general/latest/gr/xray.html#limits_xray) en la Referencia AWS general.

Si llama a una API de Amazon SNS desde un servicio que ya se está rastreando, Amazon SNS transmite el rastreo, aunque el rastreo de X-Ray no esté habilitado en la API.

Amazon SNS solo admite rastreo de X-Ray para temas estándar y FIFO. Puede habilitar X-Ray para un tema de Amazon SNS mediante la [consola de Amazon SNS](https://console.aws.amazon.com/sns/v3/home), la [API `SetTopicAttributes` de Amazon SNS](https://docs.aws.amazon.com/sns/latest/api/API_SetTopicAttributes.html), la [referencia de la CLI de Amazon Simple Notification Service](https://docs.aws.amazon.com/cli/latest/reference/sns/) o [CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topic.html).

Para obtener más información acerca del uso de Amazon SNS con X-Ray, consulte [Amazon SNS y AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/xray-services-sns.html) en la Guía para desarrolladores de AWS X-Ray .

## Permisos de rastreo activo
<a name="sns-active-tracing-permissions"></a>

Al utilizar la consola de Amazon SNS, Amazon SNS intenta crear los permisos necesarios para que el tema de Amazon SNS llame a X-Ray. El intento puede rechazarse si no tiene los permisos suficientes para usar la consola de Amazon SNS. Para obtener más información, consulte [Identity and Access Management en Amazon SNS](security-iam.md) y [Ejemplos de casos de control de acceso con Amazon SNS](sns-access-policy-use-cases.md).

Cuando utilice la CLI, debe configurar los permisos manualmente. Estos permisos se configuran mediante políticas de recursos. Para obtener más información acerca del uso de los permisos necesarios en X-Ray, consulte [Amazon SNS y AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/xray-services-sns.html).

## Habilitar el rastreo activo en un tema de Amazon SNS mediante la consola AWS
<a name="sns-active-tracing-enable"></a>

Cuando se habilita el rastreo activo en un tema de Amazon SNS, este lee el identificador de rastreo, envía los datos al cliente en función de ese identificador y lo propaga a los servicios posteriores.

1. Inicie sesión en la [consola de Amazon SNS](https://console.aws.amazon.com/sns/home).

1. Elija un tema o cree uno nuevo. Para obtener más información acerca de la creación de temas, consulte [Creación de un tema de Amazon SNS](sns-create-topic.md).

1. En la página **Crear tema**, en la sección **Detalles**, elija un tipo de tema: **FIFO** o **Estándar**.

   1. Ingrese un **nombre** para el nuevo tema.

   1. (Opcional) Ingrese un **nombre para mostrar** para el tema.

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

Una vez que hayas activado X-Ray para tu tema de Amazon SNS, puedes usar el [mapa del servicio de X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/xray-services-sns.html) para ver las end-to-end trazas y los mapas de servicio del tema.

## Habilitar el rastreo activo en un tema de Amazon SNS mediante el SDK AWS
<a name="sns-enable-active-tracing-sdk"></a>

El siguiente ejemplo de código muestra cómo habilitar el rastreo activo en un tema de Amazon SNS mediante AWS el SDK for 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 tema de Amazon SNS mediante la CLI AWS
<a name="sns-enable-active-tracing-cli"></a>

El siguiente ejemplo de código muestra cómo habilitar el rastreo activo en un tema de Amazon SNS mediante la 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 tema de Amazon SNS mediante CloudFormation
<a name="sns-enable-active-tracing-cf"></a>

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

```
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
<a name="sns-active-tracing-verify"></a>

Puede utilizar la consola de Amazon SNS para comprobar si el rastreo activo está habilitado para su tema o si no se ha podido añadir la política de recursos.

1. Inicie sesión en la [consola de Amazon SNS](https://console.aws.amazon.com/sns/home).

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

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

1. Elija la pestaña **Integrations** (Integraciones).

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

1. 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 tema de Amazon SNS denominado «SampleTopic» en el. Consola de administración de AWS Indica que el rastreo AWS X-Ray activo está habilitado para este tema, pero falta una política de recursos que permita a Amazon SNS enviar datos de rastreo. Se incluye el botón “Crear política” para resolver este problema.\]](http://docs.aws.amazon.com/es_es/sns/latest/dg/images/xray.png)


## Prueba del rastreo activo
<a name="sns-active-tracing-test"></a>

1. Inicie sesión en la [consola de Amazon SNS](https://console.aws.amazon.com/sns/home).

1. Crear un tema de Amazon SNS Para obtener más detalles sobre cómo hacerlo, consulte [Para crear un tema mediante el Consola de administración de AWS](sns-create-topic.md#create-topic-aws-console).

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

1. Publique un mensaje en el tema de Amazon SNS. Para obtener más detalles sobre cómo hacerlo, consulte [Para publicar mensajes en los temas de Amazon SNS mediante Consola de administración de AWS](sns-publishing.md#sns-publishing-messages).

1. Utilice el [mapa del servicio de X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/xray-services-sns.html) 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 tema de Amazon SNS denominado xray-topic "». Desde allí, el mensaje se distribuye a varios servicios descendentes, como una cola de Amazon SQS, 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 velocidad 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.\]](http://docs.aws.amazon.com/es_es/sns/latest/dg/images/xray-troubleshooting.png)
