我一直在尝试使用nlog记录服务器详细信息。但似乎布局渲染器中存在一些错误。
我试过这些:
<parameter name="@serverName" layout="${aspnet-request:serverVariable=SERVER_NAME}" />
<parameter name="@port" layout="${aspnet-request:serverVariable=SERVER_PORT}" />
<parameter name="@serverAddress" layout="${aspnet-request:serverVariable=LOCAL_ADDR}" />
<parameter name="@remoteAddress" layout="${aspnet-request:serverVariable=REMOTE_ADDR}:${aspnet-request:serverVariable=REMOTE_PORT}" />
这些来自官方文档,但仍然无效。
我在project.json文件中有这些
"NLog.Extensions.Logging": "1.0.0-rtm-beta1",
"NLog.Web.AspNetCore": "4.3.0",
答案 0 :(得分:0)
如前所述[{3}},ASP.NET核心不支持serverVariable
的{{1}}选项
serverVariable - 要呈现的ServerVariables项。有关可能的选项,请参阅:msdn。 ASP.NET Core不支持。
ASP.NET Core中没有服务器变量集合(与ASP.NET签订合同),因此我们无法使用它。
我们已使用新渲染器替换了多个构造,请参阅in the docs
${aspnet-request}
=&gt;这是${aspnet-request:serverVariable=SERVER_NAME}
吗? ${aspnet-Request-Host}
=&gt; ${aspnet-request:serverVariable=SERVER_PORT}
${aspnet-request-url:IncludeHost=false:IncludePort=true}
=&gt;我认为 - ${aspnet-request:serverVariable=LOCAL_ADDR}
${aspnet-request-url}
=&GT;不要以为这个是支持的。 更新:如果您需要IP,请参阅this overview