Net Core NLog.Web“aspnet-user-identity”为空?

2024-03-14

我使用“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(使用前将#替换为@)

Net Core NLog.Web“aspnet-user-identity”为空? 的相关文章

随机推荐