我使用“NLog.Extensions.Logging”进行日志记录,需要记录用户身份,发现可以使用“NLog.Web.AspNetCore”。 “nlog.config”文件配置为记录“aspnet-user-identity”。但是,当我查看日志时,用户身份部分始终为空字符串,其他列看起来不错。我错过了什么吗?
我的配置文件的一部分在这里:
<extensions>
<assembly="NLog.Web.AspNetCore" />
</extensions>
<parameter name="@identity" layout="${aspnet-user-identity}"/>
<logger name="*" minlevel="Trace" appendTo="database"/>
插入命令使用“@identity”参数将日志插入数据库,但正如我所说,它始终为空。
接受的答案不适用于我的案例(在 ASP.NET Core 3.1 上使用 JwtSecurityToken),
后来意识到我只是忘记在 JwtSecurityToken 声明中添加 ClaimTypes.Name。
现在它可以工作了,不需要注册 IHttpContextAccessor。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)