【发布时间】:2018-07-18 08:46:16
【问题描述】:
根据 RabbitMq java 客户端 API,https://www.rabbitmq.com/api-guide.html#recovery
与连接、通道、恢复和相关的未处理异常 消费者生命周期被委托给异常处理程序。例外 handler 是任何实现 ExceptionHandler 接口的对象。 默认情况下,使用 DefaultExceptionHandler 的实例。它打印 标准输出的异常细节。
可以使用覆盖处理程序 连接工厂#setExceptionHandler。它将被所有人使用 工厂创建的连接:
我们有
ConnectionFactory factory = new ConnectionFactory();
cf.setExceptionHandler(customHandler);
.NET RabbitMq 客户端的相同实现是什么?添加此代码仍在编写控制台日志而不执行我的逻辑以及如何删除现有的事件处理程序?
var factory = new ConnectionFactory() { HostName = "localhost" };
var connection = factory.CreateConnection();
connection.CallbackException += (x, y) => {
Console.WriteLine("Handled"); // not printing
};
我想覆盖/删除由于拓扑恢复异常而打印到控制台的日志。
任何人都可以帮助我如何通过 RabbitMq.Client 使用 v4.1 覆盖日志的这种默认行为到控制台。非常感谢任何帮助。
【问题讨论】: