7、Logging日志

EasyNetQ提供了一个日志接口 IEasyNetQLogger:

public interface IEasyNetQLogger
{
    void DebugWrite(string format,params object[] args);
    void InfoWrite(string format, params object[] args);
    void ErrorWrite(string format, params object[] args);
    void ErrorWrite(Exception exception);
}

Logging 默认是关闭的,NullLogger作为IEasyNetQLogger的默认实现被注册进去。

有一个控制台Logger(ConsoleLogger)可以用来做测试或调试。但是,没人会在生产环境系统中使用它。调试级别的Logging是非常详细的,记录了所有信息,但会对你的应用有性能上的影响。这可能对于那些在AMQP和EasyNetQ方面没有深入了解的人来说没有多大意义。

你应该提供自己的IEasyNetQLogger实现,记录日志信息和错误信息到自己的应用日志中。RabbitHutch.CreateBus方法提供了overloads方法,允许你替换成自己的日志组件。参看Replacing EasyNetQ Components.你可以使用这个方法注册自己的Logger到Bus中。示例如下:

var logger = new MyLogger();// IEasyNetQLogger实现。
var bus = RabbitHutch.CreateBus(“我的连接字符串”,x => x.Register<IEasyNetQLooger>(_ => loger));

原文地址:https://github.com/EasyNetQ/EasyNetQ/wiki/Logging

posted on 2017-12-04 16:00  困兽斗  阅读(138)  评论(0编辑  收藏  举报

导航