gpt4 book ai didi

azure-functions - 在本地运行 azure Functions 时如何覆盖日志记录设置?

转载 作者:行者123 更新时间:2023-12-04 01:37:11 26 4
gpt4 key购买 nike

Azure Functions 的日志记录设置在 host.json file 中定义.当前运行时 filters-out most of the logging categories ,因此需要将排除项添加到 host.json 文件中。但是这个文件适用于所有环境,这会导致所有环境都使用一个日志记录配置。

如何在 host.json 中为生产环境保留单一定义,然后在本地运行时覆盖它而无需每次都编辑该文件?

在 ASP.Net Core 中,我们使用 appsettings.jsonappsettings.{environment}.json 文件来实现这个目的,但它们不被支持Azure Functions 的盒子。
Azure Functions 的 appsettings.Development.json 文件等效于 local.settings.json,但它不支持与日志记录相关的任何配置。 Host node它包含与 host.json 文件内容没有任何关系。

我还没有找到任何简单的方法来从 FunctionsStartup 以编程方式执行此操作,而不会破坏所有/某些 Azure Functions DI 设置...

最佳答案

有一种方法可以通过环境变量(local.settings.json 本地或云中的应用程序设置)加载和自定义 host.json 文件。我们只是还没有很好地记录它。您可以在此评论中查看详细信息:

https://github.com/Azure/azure-functions-host/issues/4575#issuecomment-511570111

例如,如果我想设置一个环境变量来更改 routePrefix,host.json 看起来像

{
"extensions": {
"http": {
"routePrefix": "test",
}
}
}

但我可以使用具有以下格式的环境变量来做到这一点:

AzureFunctionsJobHost__extensions__http__routePrefix 的值为 test

我记下了添加官方文档

关于azure-functions - 在本地运行 azure Functions 时如何覆盖日志记录设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59093584/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com