From faad5e875489359cf4977d5a4c05a268591e8e36 Mon Sep 17 00:00:00 2001 From: hoa0217 Date: Fri, 5 Apr 2024 13:42:23 +0900 Subject: [PATCH] =?UTF-8?q?feature:=20CustomErrorHandler=EB=A5=BC=20Rabbit?= =?UTF-8?q?MQ=EC=97=90=20=EC=A0=81=EC=9A=A9=ED=95=9C=EB=8B=A4.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Related: #70 --- .../config/rabbitmq/RabbitMQConfig.java | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/main/java/com/modoospace/config/rabbitmq/RabbitMQConfig.java diff --git a/src/main/java/com/modoospace/config/rabbitmq/RabbitMQConfig.java b/src/main/java/com/modoospace/config/rabbitmq/RabbitMQConfig.java new file mode 100644 index 0000000..d28942a --- /dev/null +++ b/src/main/java/com/modoospace/config/rabbitmq/RabbitMQConfig.java @@ -0,0 +1,33 @@ +package com.modoospace.config.rabbitmq; + +import org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory; +import org.springframework.amqp.rabbit.connection.ConnectionFactory; +import org.springframework.amqp.rabbit.listener.FatalExceptionStrategy; +import org.springframework.boot.autoconfigure.amqp.SimpleRabbitListenerContainerFactoryConfigurer; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.util.ErrorHandler; + +@Configuration +public class RabbitMQConfig { + + @Bean + public SimpleRabbitListenerContainerFactory rabbitListenerContainerFactory( + ConnectionFactory connectionFactory, + SimpleRabbitListenerContainerFactoryConfigurer configurer) { + SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory(); + configurer.configure(factory, connectionFactory); + factory.setErrorHandler(errorHandler()); + return factory; + } + + @Bean + public ErrorHandler errorHandler() { + return new CustomErrorHandler(fatalExceptionStrategy()); + } + + @Bean + FatalExceptionStrategy fatalExceptionStrategy() { + return new CustomFatalExceptionStrategy(); + } +}