从HttpClient请求中删除tracepparent头



当我用HttpClient发送任何请求时,它会自动将标题TraceParent附加到请求头。我尝试清除所有默认的请求标头,但这并没有什么不同。

标头traceparentRequest-Id由diagnostichandler指定:https://github.com/dotnet/runtime/blob/release/5.0/src/libraries/System.Net.Http/src/System/Net/Http/DiagnosticsHandler.cs#L286

如何禁用此行为描述如下:https://github.com/dotnet/aspnetcore/issues/21012#issuecomment-616570453

ASP。. NET Core默认创建一个代表请求的Activity。这就是告诉HttpClient发送外向请求id头的内容。您可以通过以下几种方式禁用它:

  • 通过在发出请求之前将当前活动设置为null。当前= null)
  • 通过将环境变量DOTNET_SYSTEM_NET_HTTP_ENABLEACTIVITYPROPAGATION设置为"false";或"0"。
  • 通过AppContext将System.Net.Http.EnableActivityPropagation设置为false

最新更新