【发布时间】:2019-12-30 15:16:18
【问题描述】:
我正在使用 Akka.Net 和 Akka.Logger.Serilog。在我的应用设置中,我使用
loggers = ["Akka.Logger.Serilog.SerilogLogger, Akka.Logger.Serilog"]
在Program.cs,我使用:
Host.CreateDefaultBuilder(args)
.UseServiceProviderFactory(new AutofacServiceProviderFactory())
.UseSerilog((ctx, config) =>
config.ReadFrom.Configuration(ctx.Configuration), true);
在Startup.cs,我尝试过有或没有
services.AddSingleton<ILoggingAdapter, SerilogLoggingAdapter>();
在我的演员中,我使用以下内容来初始化记录器:
ILoggingAdapter _logger = Context.GetLogger(); // and Logger.GetLogger(Context);
// then
_logger.Info("Message loaded: {@Message}", message);
// and this _logger.Info("Message loaded: {Message}", message);
以及上述的各种其他组合,但每次,
在控制台中我看到了一些我自己的日志,但我到处都看到以下消息:
[ERROR][12/30/2019 12:43:47][Thread 0010][akka://MyActorSystem/system/log1-DefaultLogger] Input string was not in a correct format. Cause: System.FormatException: Input string was not in a correct format.
at System.Text.StringBuilder.FormatError()
at System.Text.StringBuilder.AppendFormatHelper(IFormatProvider provider, String format, ParamsArray args)
at System.String.FormatHelper(IFormatProvider provider, String format, ParamsArray args)
at System.String.Format(String format, Object[] args)
at Akka.Event.DefaultLogMessageFormatter.Format(String format, Object[] args)
是否还有其他步骤可以确保 Akka.net 使用正确的日志适配器?
如何控制默认记录器使用的内容?
【问题讨论】:
标签: logging .net-core serilog akka.net