Raf*_*ski 3 masstransit serilog
我尝试过使用MassTransit.SerilogIntegrationnuget,但看起来它的最后版本是5.5.6。我使用的是 MassTransit 7.1.4,当我安装这个 Serilog nuget 时,我遇到了一个异常,它找不到接口ILog。有没有办法将 Serilog 与当前版本的 MassTransit 一起使用?
大众运输使用ILoggerFactory从容器中使用,因此只要配置了日志记录提供程序并且它是容器的一部分,它就会被解析和使用。无论是 Serilog 还是 Microsoft Extensions Logging,都没有关系。
该示例使用 Serilog \xe2\x80\x93 事实上,几乎我所有的示例都使用它。
\n这可以在以下Hosting级别进行配置:
return Host.CreateDefaultBuilder(args)\n.UseSerilog((host, log) =>\n{\n if (host.HostingEnvironment.IsProduction())\n log.MinimumLevel.Information();\n else\n log.MinimumLevel.Debug();\n\n log.MinimumLevel.Override("Microsoft", LogEventLevel.Warning);\n log.WriteTo.Console();\n})\nRun Code Online (Sandbox Code Playgroud)\n或者在程序级别:
\nLog.Logger = new LoggerConfiguration()\n .MinimumLevel.Information()\n .MinimumLevel.Override("JobService", Serilog.Events.LogEventLevel.Debug)\n .MinimumLevel.Override("Microsoft", Serilog.Events.LogEventLevel.Warning)\n .MinimumLevel.Override("Microsoft.EntityFrameworkCore", Serilog.Events.LogEventLevel.Warning)\n .MinimumLevel.Override("Microsoft.EntityFrameworkCore.Database.Command", Serilog.Events.LogEventLevel.Warning)\n .Enrich.FromLogContext()\n .WriteTo.Console()\n .CreateLogger();\n\nreturn Host.CreateDefaultBuilder(args)\n .ConfigureWebHostDefaults(webBuilder =>\n {\n webBuilder.UseStartup<Startup>();\n })\n .UseSerilog();\nRun Code Online (Sandbox Code Playgroud)\n这些都使用Serilog.Extensions.LoggingNuGet包。MassTransit 不再有特定于日志的软件包。
| 归档时间: |
|
| 查看次数: |
2545 次 |
| 最近记录: |