es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo puedo obtener el mensaje más reciente en un tema de SNS?

¿Cómo puedo obtener el último mensaje en un tema de SNS usando AWS CLI?

Específicamente, me gustaría ver este tema de SNS, el cual es utilizado por AWS para informar a los usuarios sobre los cambios en los rangos de IP de sus servicios:

arn:aws:sns:us-east-1:806199016981:AmazonIpSpaceChanged

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para obtener el último mensaje de un tema de SNS utilizando AWS CLI, siga estos pasos:

    1. Abra su terminal o símbolo del sistema y asegúrese de tener instalado y configurado el AWS CLI con sus credenciales de AWS.
    2. Ejecute el siguiente comando para recuperar el último mensaje en el tema de SNS:
      aws sns list-subscriptions-by-topic --topic-arn arn:aws:sns:us-east-1:806199016981:AmazonIpSpaceChanged --output text --query 'Subscriptions[*].SubscriptionArn' | xargs -I{} aws sns receive-message --subscription-arn {} --output text --query 'Message'
      

    Este comando utiliza las APIs “list-subscriptions-by-topic” y “receive-message” para recuperar el último mensaje del tema de SNS especificado.

    Se utiliza la API “list-subscriptions-by-topic” para recuperar los ARN (nombres de recursos de Amazon) de suscripción de todas las suscripciones al tema de SNS especificado. Los parámetros “–output text” y “–query ‘Subscriptions[*].SubscriptionArn'” se utilizan para filtrar los resultados y devolver solo los ARN de suscripción en un formato de texto que se puede canalizar al comando “xargs”.

    El comando “xargs” se utiliza para pasar cada ARN de suscripción a la API “receive-message”, que se utiliza para recuperar el último mensaje para cada suscripción. Los parámetros “–output text” y “–query ‘Message'” se utilizan para filtrar los resultados y devolver solo el mensaje en un formato de texto.

    Tenga en cuenta que este comando solo devuelve el último mensaje del tema de SNS para las suscripciones a las que tenga acceso. Si no tiene acceso a ninguna suscripción al tema de SNS, recibirá un mensaje de error.

Comments are closed.