1

有没有办法让 Logger 有两个实现是 triggert ?

我想要一个用于事件日志一个控制台记录器。

在我的代码中,我只使用注册的 ILog。

这是我当前设置记录器的代码

 LogManager.LogFactory = new ServiceStack.Logging.EventLog.EventLogFactory("QAServer", "Foo");

我是否必须创建一个新工厂作为一种装饰器,还是有更简单的方法可以做到这一点?

4

1 回答 1

3

是的,我相信最简单的方法是两个创建一个新的 Logger 和它自己的 LogFactory 来解决它。实现 ILog 和 ILogFactory 接口非常容易。

您的新记录器可以是组合的 EventLogger 和控制台记录器的精简包装器。

看一眼

src/ServiceStack.Logging.EventLog/EventLogFactory.cs src/ServiceStack.Interfaces/Logging/Support/Logging/ConsoleLogger.cs

控制台记录器位于主 ServiceStack 项目中,而 EventLogger 位于 ServiceStack.Logging 项目中。

于 2013-08-13T12:07:17.417 回答