J'ai une application qui a besoin de suivre l'identifiant de transaction (ou quelque chose de similaire) d'un message envoyé à une file d'attente SQS.Comment obtenir une donnée identifiable lors de l'écriture dans une file d'attente AWS SQS?
Si j'envoie avec la classe suivante, comment puis-je obtenir des données identifiables en interrogeant la file d'attente?
@Component
public class SqsQueueDao {
private static final Logger LOGGER = LoggerFactory.getLogger(SqsQueueDao.class);
private final QueueMessagingTemplate queueMessagingTemplate;
@Autowired
@Qualifier("awsClient")
AmazonSQSAsyncClient amazonSQSAsyncClient;
public SqsQueueDao(AmazonSQSAsync amazonSQSAsyncClient) {
this.queueMessagingTemplate = new QueueMessagingTemplate(amazonSQSAsyncClient);
}
//TODO: implement a strategy for identifying the message id
public Long send(String queueName, String message) {
queueMessagingTemplate.convertAndSend(queueName, MessageBuilder.withPayload(message).build());
//return some long identifying data
}
}