【发布时间】:2022-01-08 04:03:34
【问题描述】:
我开发了 Azure Function,它使用 log4net 进行日志记录,它是通过文件配置的。 在本地它工作正常,但是当我在 Azure 上部署它时收到错误:System.Private.CoreLib: 找不到文件'/azure-functions-host/log4net.config'
我正在使用 Linux 应用服务,但无法在文件系统上找到文件夹“azure-functions-host”。
【问题讨论】:
-
在 Visual Studio 中,“构建操作”和“复制到输出目录”将是项目中此类配置文件的属性。目前尚不清楚您使用的是哪个 IDE,可能您需要打开这样的标志,以便您的
deployment到 azure 包含该配置文件。 -
是的,我已经在VS中设置了这两个选项,并且文件在部署后位于根文件夹中。如果我尝试 Windows Azure 函数错误,那么 System.Private.CoreLib: 找不到文件 'C:\Program Files (x86)\SiteExtensions\Functions\3.3.1\32bit\log4net.config'。
-
你可以尝试获取log4net
repository,如example所示吗?另外,你可以打开托管你的函数应用的应用服务的Kudu控制台并检查log4net配置文件配置正确。 -
几分钟前我已经解决了这个问题。您链接的解决方案适用于 Windows(配置位置和日志文件夹)。在 Linux 中,它适用于配置位置,但对于日志文件夹位置,我必须将其设置为“/home/site/wwwroot/Log4Net/function.log”请发布您的答案。
标签: azure azure-functions azure-appservice