4

Wiki 在描述如何配置记录器方面含糊不清。我在用着

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 记录器的正确配置字符串是什么?

4

2 回答 2

5

正确的 HOCON 配置应如下所示:

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

要配置自定义记录器,您只需将FQN传递到akka.loggersHOCON 字段。

因此,如果您想Foo.Loggers.MyCustomLogger在程序集Foo.Loggers和原始 NLog 记录器中使用用户定义的记录器,您的 HOCON 将如下所示:

akka {
  loggers = ["Foo.Loggers.MyCustomLogger,Foo.Loggers","Akka.Logger.NLog.NLogLogger,Akka.Logger.NLog"]
}
于 2015-06-16T18:21:20.153 回答
2

您的例外指出,您使用的记录器的完全限定类型名称不正确。您没有在项目中提供正确的程序集,或者类型名称无效。

目前,支持 NLog 的 Akka 记录器现在可以通过以下方式访问:

install-package Akka.Logger.NLog

NLog 记录器本身可以使用Akka.Logger.NLog.NLogLogger, Akka.Logger.NLog完全限定名称访问。

于 2014-12-09T12:12:42.607 回答