在 Blazor Web assembly 中隐藏控制台授权日志

Cos*_*min 3 blazor blazor-webassembly

我们如何隐藏写入控制台的日志,尤其是 Microsoft.AspNetCore.Authorization 日志?我认为将 Microsoft Log 设置为 None 可以解决该问题。Blazor Web assembly 的 appsettings.json 文件

  "Logging": {
    "IncludeScopes": false,
    "LogLevel": {
      "MinimumLevel": {
        "Default": "None",
        "System": "None",
        "Microsoft": "None"

      }
    }
  }
Run Code Online (Sandbox Code Playgroud)

截屏

mcb*_*cbr 5

您可以使用记录器过滤规则禁用此记录器:

builder.Logging.AddFilter("Microsoft.AspNetCore.Authorization.*", LogLevel.None);
Run Code Online (Sandbox Code Playgroud)

或者

builder.Services.PostConfigure<LoggerFilterOptions>(opt => 
    opt.Rules.Add(
        new LoggerFilterRule(null, "Microsoft.AspNetCore.Authorization.*", LogLevel.None, null)
        ));
Run Code Online (Sandbox Code Playgroud)

LoggerFilterOptions注册于LoggingServiceCollectionExtensions.AddLogging. LoggerFactory使用这些选项并处理对过滤规则的任何更改。