当我发布为发布模式时,为什么我看到 azure function host for .NET startup with Debug=True?

Why do I see azure function host for .NET startup with Debug=True when I published as release mode?

当我查看我的 azure .NET 函数的启动日志时,我看到以下行:

Starting Host (HostId=my-function-app, Version=1.0.11015.0, ProcessId=8308, Debug=True, Attempt=0)

我已经在发布模式下发布了该项目,但我在任何地方都找不到设置此设置的原因。我假设这不是我的功能的问题,但由于某种原因主机处于调试模式。这是预期的行为吗?

检查您的 web.config 文件并确保

<system.web>
    <compilation debug="false" />

即使您的程序集处于发布模式,ASP.net 运行时也会使用此设置来更改其行为。我找不到当前的更改列表,但我知道它包括提供 .debug.js 文件并启用额外的验证和日志记录。

该调试日志并不意味着您的代码或 Functions 运行时主机是 运行 调试版本。这里的"Debug"指的是我们自己的内部模式,我们用来判断最近是否连接过Azure Functions Portal。我们对此进行跟踪,以便我们可以针对连接的 debug/develop 会话进行优化,并且当这些会话断开连接时,针对稳定状态进行优化。

所以你不用担心:)