Azure 函数 - 'azure-functions-host' 文件夹的位置

Posted

技术标签:

【中文标题】Azure 函数 - \'azure-functions-host\' 文件夹的位置【英文标题】:Azure function - location of 'azure-functions-host' folderAzure 函数 - 'azure-functions-host' 文件夹的位置 【发布时间】: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”请发布您的答案。 【参考方案1】:

从函数应用程序中,log4net 将使用repository 对象初始化,如example 所示。另外,如果linux 用于托管应用服务,则日志文件的路径设置为“/home/site/wwwroot/Log4Net/function.log”

【讨论】:

以上是关于Azure 函数 - 'azure-functions-host' 文件夹的位置的主要内容,如果未能解决你的问题,请参考以下文章

Azure 流分析输出到 azure 函数应用

Azure 存储队列触发的 Azure 函数

集成 Azure 服务总线主题和 Azure 函数

从 Azure 函数获取 401 时,Azure 逻辑应用停止执行

Azure 函数 - 当前 Azure 资源名称

Azure 函数无法访问 Azure Blob