GCP Pub/Sub:如何在 PublishCallbackListener 的 onFailure() 中获取事件详细信息
GCP Pub/Sub: How to get event details in onFailure() of PublishCallbackListener
我们希望在向 Pub/Sub 发布事件失败的情况下拥有故障回复机制。我正在使用 "ListenableFutureCallback" 来了解消息发布成功与否。如果失败,它只是抛出异常,我需要将事件详细信息 post 发送到内部消息服务。如何在 onFailure() 方法中获取事件详细信息。
我正在使用 Spring 集成。
下面是一段代码。
听众:
@Component
public class PubSubOperationListener implements ListenableFutureCallback<String> {
private static Logger LOGGER = LoggerFactory.getLogger(PubSubOperationListener.class);
@Override
public void onFailure(Throwable throwable) {
LOGGER.error("Failed to publish the message and details : {}",throwable);
// Logic to process it using different approach.
}
@Override
public void onSuccess(String s) {
LOGGER.info("Message published successfully.");
}
服务激活器:
PubSubMessageHandler pubSubMessageHandler = new PubSubMessageHandler(pubSubTemplate, testTopic);
pubSubMessageHandler.setPublishCallback(pubSubOperationListener);
return pubSubMessageHandler;
如果有不同的方法,请提出建议。
我们希望在向 Pub/Sub 发布事件失败的情况下拥有故障回复机制。我正在使用 "ListenableFutureCallback" 来了解消息发布成功与否。如果失败,它只是抛出异常,我需要将事件详细信息 post 发送到内部消息服务。如何在 onFailure() 方法中获取事件详细信息。 我正在使用 Spring 集成。 下面是一段代码。
听众:
@Component
public class PubSubOperationListener implements ListenableFutureCallback<String> {
private static Logger LOGGER = LoggerFactory.getLogger(PubSubOperationListener.class);
@Override
public void onFailure(Throwable throwable) {
LOGGER.error("Failed to publish the message and details : {}",throwable);
// Logic to process it using different approach.
}
@Override
public void onSuccess(String s) {
LOGGER.info("Message published successfully.");
}
服务激活器:
PubSubMessageHandler pubSubMessageHandler = new PubSubMessageHandler(pubSubTemplate, testTopic);
pubSubMessageHandler.setPublishCallback(pubSubOperationListener);
return pubSubMessageHandler;
如果有不同的方法,请提出建议。