【问题标题】:Inconsistent Results From ARM Template Setting App Service Log Config来自 ARM 模板设置应用服务日志配置的结果不一致
【发布时间】:2017-05-04 18:50:45
【问题描述】:

我遇到了这个 SO 用户遇到的同样问题 ARM Template containing config settings for web app 该线程没有解决方案,所以我再次问基本相同的问题。我有一个如下所示的 ARM 模板:

{
  "name": "logs",
  "type": "config",
  "apiVersion": "2015-08-01",
  "dependsOn": [
    "[resourceId('Microsoft.Web/sites', parameters('AppServiceName'))]"
  ],
  "properties": {
    "applicationLogs": {
      "azureBlobStorage": {
        "level": "Verbose",
        "sasUrl": "[concat('https://',parameters('StorageAccountName'),'.blob.core.windows.net/logs',parameters('SasToken'))]",
        "retentionInDays": null
      }
    },
    "httpLogs": {
      "azureBlobStorage": {
        "sasUrl": "[concat('https://',parameters('StorageAccountName'),'.blob.core.windows.net/logs',parameters('SasToken'))]",
        "retentionInDays": 360,
        "enabled": true
      }
    },
    "failedRequestsTracing": {
      "enabled": true
    },
    "detailedErrorMessages": {
      "enabled": true
    }
  }
}

我会运行一次,在资源浏览器中结果是

{
  "id": "/subscriptions/.../resourceGroups/.../providers/Microsoft.Web/sites/.../config/logs",
  "name": "logs",
  "type": "Microsoft.Web/sites/config",
  "location": "East US",
  "properties": {
    "applicationLogs": {
      "fileSystem": {
        "level": "Off"
      },
      "azureTableStorage": {
        "level": "Off",
        "sasUrl": null
      },
      "azureBlobStorage": {
        "level": "Verbose",
        "sasUrl": "VALID_SAS_URL",
        "retentionInDays": null
      }
    },
    "httpLogs": {
      "fileSystem": {
        "retentionInMb": 35,
        "retentionInDays": null,
        "enabled": false
      },
      "azureBlobStorage": {
        "sasUrl": "VALID_SAS_URL",
        "retentionInDays": null,
        "enabled": true
      }
    },
    "failedRequestsTracing": {
      "enabled": true
    },
    "detailedErrorMessages": {
      "enabled": true
    }
  }
}

资源浏览器和门户中的一切看起来都不错。 然后我再次运行相同的模板,结果是:

{
"id": "/subscriptions/.../resourceGroups/.../providers/Microsoft.Web/sites/.../config/logs",
"name": "logs",
"type": "Microsoft.Web/sites/config",
"location": "East US",
"properties": {
  "applicationLogs": {
    "fileSystem": {
      "level": "Off"
    },
    "azureTableStorage": {
      "level": "Off",
      "sasUrl": null
    },
    "azureBlobStorage": {
      "level": "Verbose",
      "sasUrl": null,
      "retentionInDays": null
    }
  },
  "httpLogs": {
    "fileSystem": {
      "retentionInMb": 35,
      "retentionInDays": null,
      "enabled": true
    },
    "azureBlobStorage": {
      "sasUrl": null,
      "retentionInDays": null,
      "enabled": false
    }
  },
  "failedRequestsTracing": {
    "enabled": true
  },
  "detailedErrorMessages": {
    "enabled": true
  }
}

我可以多次运行同一个模板,是否使用 ARM 模板中定义的设置启用诊断日志记录完全是随机的。

【问题讨论】:

  • 如果您通过资源浏览器设置相同的东西,它是否始终如一地工作?另外,这是你的 ARM 模板中唯一的东西,还是更大的东西的一部分?
  • 这是一个更大的事情的一部分,但它是唯一在运行 ARM 模板时显示结果不一致的部分。我通常不使用资源管理器来进行配置更改,但我只是进行了一些更新,没有看到任何类似于我使用 ARM 模板所遇到的情况。

标签: azure azure-web-app-service azure-resource-manager


【解决方案1】:

您是否还在模板中设置应用程序设置?我认为当它们一起使用时可能会有问题。在您的模板中尝试以下操作:

  • 先设置应用设置
  • 然后使config/log 依赖于应用设置。

【讨论】:

  • 就是这样。我添加了dependsOn,它现在每次都能可靠地工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-21
  • 1970-01-01
  • 2017-08-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多