【发布时间】:2021-03-15 10:35:56
【问题描述】:
我的 Nlog.config 包含这个模板:
<target xsi:type="Console" name="Console"
layout="${aspnet-item:variable:requestId} ${newline} ..." />
我正在使用 .net core(带有 docker)。
在等待代码中,我确实看到了 item:variable:requestId 的值,因为我使用了:
_httpContextAccessor.HttpContext.Items["requestId"] = "dummyvalue";
所以 nlog 可以从上下文中读取它。
但是,如果我的 loggerService 在 Task.Run 内运行,那么我看不到值。 (因为 Task.run 没有 HttpContext)
问题:
是否有可以手动设置aspnet-item:variable:requestId 值的代码API?
还是有其他选择?
【问题讨论】: