【问题标题】:Configure Serilog in .NET 6 Razor Pages在 .NET 6 Razor 页面中配置 Serilog
【发布时间】:2022-08-15 18:18:33
【问题描述】:

我有一个基于剃须刀页面(.net 6)的网络渐进式应用程序,我无法在我的项目中按文件配置 serilog。

我的程序.cs

using Microsoft.AspNetCore.Components.Web;
using Microsoft.AspNetCore.Components.WebAssembly.Hosting;
using Serilog;
using Serilog.Core;
using Serilog.Extensions.Logging;
using Microsoft.Extensions.Logging;
    
var builder = WebAssemblyHostBuilder.CreateDefault(args);
builder.RootComponents.Add<App>(\"#app\");
builder.RootComponents.Add<HeadOutlet>(\"head::after\");

builder.Logging.AddConfiguration(builder.Configuration.GetSection(\"Serilog\")).AddSerilog();

我的.csproj

<ItemGroup>
    <PackageReference Include=\"Microsoft.Extensions.Logging.Configuration\" Version=\"6.0.0\" />
    <PackageReference Include=\"Serilog.Extensions.Hosting\" Version=\"4.2.0\" />
</ItemGroup>

我的 appsettings.json

  \"Serilog\": {
    \"Using\": [ \"Serilog.Sinks.File\" ],
    \"MinimumLevel\": {
      \"Default\": \"Information\"
    },
    \"WriteTo\": [
      {
        \"Name\": \"File\",
        \"Args\": {
          \"path\": \"../logs/webapi-.log\",
          \"rollingInterval\": \"Day\",
          \"outputTemplate\": \"[{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} {CorrelationId} {Level:u3}] {Username} {Message:lj}{NewLine}{Exception}\"
        }
      }
    ]
  }

我在我的剃须刀页面上注入日志,例如:

@inject ILogger<Edit> _logger

日志没有写入我配置的日志文件。

  • 我刚刚更新了错误消息@mason

标签: c# razor-pages serilog


【解决方案1】:

你传递 ConfigurationSection 而不是 IConfiguration - 没有重载方法,它接受这样的参数。我想你应该通过 builder.Configuration 代替:

builder.Logging.AddConfiguration(builder.Configuration);

【讨论】:

  • 我得到了同样的错误。
  • 试试.AddConfiguration(builder, builder.configuration)
  • 这没用。问题是不知道 AddConfiguration 方法
  • 它看到了错误所说的扩展方法,所以它看起来不像没有方法......
【解决方案2】:

添加 nuget 包 -

Microsoft.Extensions.Logging.Configuration

并在Program.cs 文件中使用以下命名空间 -

using Microsoft.Extensions.Logging;

这应该可以解决 ILoggingBuilder' does not contain a definition for 'AddConfiguration' 错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-16
    • 2022-07-19
    • 2022-12-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多