关闭 .net core 3.1 中的 HttpClient 日志记录

Pau*_*gue 15 c# logging httpclient asp.net-core

我在asp.net core3.1中创建了一个http客户端。并通过启动注入它,它工作正常。

services.AddHttpClient<MyClient>();
Run Code Online (Sandbox Code Playgroud)

但是我无法控制它的日志输出。一直遵循此处的建议 https://learn.microsoft.com/en-us/aspnet/core/fundamentals/http-requests?view=aspnetcore-3.1#logging

我已经在我的配置中尝试了各种方法。目前看起来像这样

  "Logging": {
    "IncludeScopes": false,
    "LogLevel": {
      "Default": "Warning",
      "System": "Error",
      "System.Net.Http": "Warning",
      "System.Net.Http.HttpClient": "Warning",
      "System.Net.Http.HttpClient.MyClient.LogicalHandler": "Warning",
      "System.Net.Http.HttpClient.MyClient.ClientHandler": "Warning",
      "Microsoft.AspNetCore.Hosting": "Warning",
      "Microsoft.Hosting.Lifetime": "Warning"
    }
  },
Run Code Online (Sandbox Code Playgroud)

但我不断收到信息日志,例如

Level":"Information","MessageTemplate":"Received HTTP response after {ElapsedMilliseconds}ms - {StatusCode}","Properties":{"ElapsedMilliseconds":895.4859,"StatusCode":"UnprocessableEntity","EventId":{"Id":101,"Name":"RequestEnd"}

"Level":"Information","MessageTemplate":"End processing HTTP request after {ElapsedMilliseconds}ms - {StatusCode}","Properties":{"ElapsedMilliseconds":932.1484,"StatusCode":"UnprocessableEntity","EventId":{"Id":101,"Name":"RequestPipelineEnd"}
Run Code Online (Sandbox Code Playgroud)

源上下文也在记录。这记录为 "SourceContext":"System.Net.Http.HttpClient.MyClient.ClientHandler" 在我看来排除了打字问题