HostingApplicationDiagnostics resolve Request.Headers once (#9605)
This commit is contained in:
parent
24ab62108e
commit
b893777898
|
|
@ -233,22 +233,23 @@ namespace Microsoft.AspNetCore.Hosting.Internal
|
||||||
{
|
{
|
||||||
var activity = new Activity(ActivityName);
|
var activity = new Activity(ActivityName);
|
||||||
|
|
||||||
if (!httpContext.Request.Headers.TryGetValue(HeaderNames.TraceParent, out var requestId))
|
var headers = httpContext.Request.Headers;
|
||||||
|
if (!headers.TryGetValue(HeaderNames.TraceParent, out var requestId))
|
||||||
{
|
{
|
||||||
httpContext.Request.Headers.TryGetValue(HeaderNames.RequestId, out requestId);
|
headers.TryGetValue(HeaderNames.RequestId, out requestId);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!StringValues.IsNullOrEmpty(requestId))
|
if (!StringValues.IsNullOrEmpty(requestId))
|
||||||
{
|
{
|
||||||
activity.SetParentId(requestId);
|
activity.SetParentId(requestId);
|
||||||
if (httpContext.Request.Headers.TryGetValue(HeaderNames.TraceState, out var traceState))
|
if (headers.TryGetValue(HeaderNames.TraceState, out var traceState))
|
||||||
{
|
{
|
||||||
activity.TraceStateString = traceState;
|
activity.TraceStateString = traceState;
|
||||||
}
|
}
|
||||||
|
|
||||||
// We expect baggage to be empty by default
|
// We expect baggage to be empty by default
|
||||||
// Only very advanced users will be using it in near future, we encourage them to keep baggage small (few items)
|
// Only very advanced users will be using it in near future, we encourage them to keep baggage small (few items)
|
||||||
string[] baggage = httpContext.Request.Headers.GetCommaSeparatedValues(HeaderNames.CorrelationContext);
|
string[] baggage = headers.GetCommaSeparatedValues(HeaderNames.CorrelationContext);
|
||||||
if (baggage.Length > 0)
|
if (baggage.Length > 0)
|
||||||
{
|
{
|
||||||
foreach (var item in baggage)
|
foreach (var item in baggage)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue