gpt4 book ai didi

logging - Azure 函数 (v2) : different logging behavior per environment

转载 作者:行者123 更新时间:2023-12-01 01:41:00 25 4
gpt4 key购买 nike

我有一个具有多种功能的函数应用程序(v2、.NET Core)。此 Functions 应用程序部署到不同的环境(= 不同的订阅)。出于开发目的,我大量利用 (ILogger) 日志,但在部署到除 dev 之外的其他环境时,我想关闭日志记录。 Function 应用程序是通过 Azure DevOps 管道部署的。

您推荐哪种方法来实现这一点(在代码中,通过 appsettings,通过 host.json ......)?

谢谢

最佳答案

我还没有找到解决方案来做到这一点,例如可以通过例如设置的变量应用程序设置,我不想重构代码以使用某种调试标志(特别是因为 host.json 中还有其他特定于环境的设置)。

我现在做的是在管道中使用PowerShell任务来设置host.json的内容取决于环境。 IE。我有一个 host.json存储库中每个环境的文件,并基于相应的环境主 host.json设置为环境特定的内容host.json .

PowerShell 任务如下所示:

###########################
# Get environment variables
$releaseEnvironment = $env:RELEASE_ENVIRONMENTNAME
$currentWorkingDirectory = $env:SYSTEM_DEFAULTWORKINGDIRECTORY

###########################
# Get config data
$configFileName = "$($releaseEnvironment)_host.json"
$configFilePath = "$currentWorkingDirectory$projectPath\Deployment\Host\$configFileName"
$configFileContent = Get-Content -Raw -Path $configFilePath | ConvertFrom-Json
Write-Host "Working with '$configFilePath'..."

###########################
# Update host.json
$pathToHostJsonInUse = "$currentWorkingDirectory$projectPath\host.json"
$configFileContent | ConvertTo-Json -Depth 100 | Set-Content -Path $pathToHostJsonInUse
Write-Host "Updated '$pathToHostJsonInUse'..."

在这种情况下有用的资源是:

https://docs.microsoft.com/en-us/azure/azure-functions/functions-monitoring#configure-categories-and-log-levels

https://docs.microsoft.com/en-us/azure/azure-functions/functions-host-json

关于logging - Azure 函数 (v2) : different logging behavior per environment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57317263/

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