【发布时间】:2020-11-07 22:29:42
【问题描述】:
我们广泛使用弹簧集成框架。在我们的一个用例中,我们从第三方 api 中提取大量数据。这样做需要一些时间,例如 60 秒或更长时间才能获得 200 ok 响应和数据。但在某些情况下,数据太大了,我们开始获取
o.s.a.r.l.SimpleMessageListenerContainer Stopping container from aborted consumer java.lang.OutOfMemoryError: Java heap space
当此错误出现时,队列使用者(线程)死亡并反映在 rabbit mq 控制台中。我想找出一种方法可以在我的应用程序中捕获此错误日志,以便引发相关错误。
@Service
public class FaiureListener implements ApplicationListener<ListenerContainerConsumerFailedEvent> {
@Autowired
HangoutAlertPoster alertSender;
@Override
public void onApplicationEvent(ListenerContainerConsumerFailedEvent event) {
alertSender.sendHangoutAlert("[FATAL] Consumer aborted error. Reason="+event.getReason());
}
}
【问题讨论】:
标签: spring spring-boot rabbitmq spring-integration