【发布时间】:2020-02-12 08:36:27
【问题描述】:
appsettings.json 允许我们指定分层设置:
"ApplicationInsights": {
"InstrumentationKey": "..."
}
在代码中它们是这样使用的 - config["ApplicationInsights:InstrumentationKey"]
但是,尝试在应用服务 terraform 配置中提供 ApplicationInsights:InstrumentationKey:
app_settings = {
"ApplicationInsights:InstrumentationKey" = data.azurerm_application_insights.instance.instrumentation_key
}
导致以下错误消息:
Error: Error updating Application Settings for App Service "app505-dfpg-qa2-web-eastus2-gateway-apsvc": web.AppsClient#UpdateApplicationSettings: Failure responding to request: StatusCode=400 -- Original Error: autorest/azure: Service returned an error. Status=400 Code="BadRequest" Message="AppSetting with name 'ApplicationInsights:InstrumentationKey' is not allowed." Details=[{"Message":"AppSetting with name 'ApplicationInsights:InstrumentationKey' is not allowed."},{"Code":"BadRequest"},{"ErrorEntity":{"Code":"BadRequest","ExtendedCode":"04072","Message":"AppSetting with name 'ApplicationInsights:InstrumentationKey' is not allowed.","MessageTemplate":"AppSetting with name '{0}' is not allowed.","Parameters":["ApplicationInsights:InstrumentationKey"]}}]
从表面上看,这个 Azure 在抱怨,而不是 terraform。
那么,如果有的话,该怎么做呢?
编辑 1
请注意,这只是一个示例。我同样可以要求以下分层设置:
"YabaDabaDoo": {
"YogiBear": "..."
}
我们如何在应用服务配置中提供它?
【问题讨论】:
标签: azure azure-web-app-service