2014-09-30 64 views
4

Wiki在描述如何配置记录器时含糊不清。我使用如何正确配置contrib记录器?

var config = ConfigurationFactory.ParseString(@" 
    akka { 
     loggers = [""Akka.NLog.Event.NLog.NLogLogger,Akka.NLog""] 
     stdout-loglevel = INFO 
     loglevel = INFO 
     log-config-on-start = on 
    }" 
); 

,并从安装的NuGet但Akka.NLog当我创建的演员系统说明“记录仪在配置中指定无法找到得到一个例外:“Akka.NLog.Event.NLog.NLogLogger, Akka.NLog“”。

什么是contrib记录器的正确配置字符串?

+1

我同意,维基页面太含糊。希望它对每个记录器都有一个具体的例子。它不是那么明显,它应该是什么类/组件。 – irperez 2015-06-08 17:13:32

+0

@irperez我也是!我会确保我们补充说。 – Aaronontheweb 2015-06-19 20:54:27

+1

@Aaronontheweb我在前几天在GitHub的文档中添加了NLog配置设置。我们只需要它为其他记录器。 – irperez 2015-06-20 04:57:13

回答

2

您的异常指出,您使用的记录器的完全限定类型名称不正确。要么你没有在你的项目中提供正确的程序集,要么类型名称是无效的。

在当下阿卡记录仪与NLOG支持现在与访问:

install-package Akka.Logger.NLog 

NLOG记录器本身是Akka.Logger.NLog.NLogLogger, Akka.Logger.NLog完全合格的名称访问。

4

正确HOCON配置应该是这样的:

akka { 
    loggers = ["Akka.Logger.NLog.NLogLogger,Akka.Logger.NLog"] 
} 

要配置自定义记录器,你只需要在FQN通入akka.loggers HOCON领域。

所以,如果你想在装配Foo.Loggers和你原来的NLOG记录器使用用户定义的记录Foo.Loggers.MyCustomLogger,你HOCON看起来就像这样:

akka { 
    loggers = ["Foo.Loggers.MyCustomLogger,Foo.Loggers","Akka.Logger.NLog.NLogLogger,Akka.Logger.NLog"] 
}