首页 > 解决方案 > 使用 ARM 模板为应用服务启用诊断日志

问题描述

我正在尝试使用门户为应用服务设置启用诊断日志,它工作正常,如下所示:

在此处输入图像描述

我尝试使用 ARM 模板创建相同的设置,但它不起作用。我的 ARM 模板如下所示:

在此处输入图像描述

设置或任何其他启用日志的方式有什么问题吗?任何帮助表示赞赏。

问候, Dipti Mamidala

标签: azureazure-web-app-servicearm-templateazure-diagnostics

解决方案


在要启用诊断日志的资源的资源数组中,添加类型为 的资源[resource namespace]/providers/diagnosticSettings

例子 :

"resources": [
  {
    "type": "providers/diagnosticSettings",
    "name": "[concat('Microsoft.Insights/', parameters('settingName'))]",
    "dependsOn": [
      "[/*resource Id for which Diagnostic Logs will be enabled>*/]"
    ],
    "apiVersion": "2017-05-01-preview",
    "properties": {
      "name": "[parameters('settingName')]",
      "storageAccountId": "[resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccountName'))]",
      "eventHubAuthorizationRuleId": "[parameters('eventHubAuthorizationRuleId')]",
      "eventHubName": "[parameters('eventHubName')]",
      "workspaceId": "[parameters('workspaceId')]",
      "logs": [ 
        {
          "category": "/* log category name */",
          "enabled": true,
          "retentionPolicy": {
            "days": 0,
            "enabled": false
          }
        }
      ],
      "metrics": [
        {
          "category": "AllMetrics",
          "enabled": true,
          "retentionPolicy": {
            "enabled": false,
            "days": 0
          }
        }
      ]
    }
  }
]

在文档中阅读更多信息

更新:要设置Web Server logging使用以下示例的值

             "properties": {
                "applicationLogs": {
                  "Storage": {
                    "level": "Verbose"
                  }
                },
                "httpLogs": {
                  "fileSystem": {
                             }
                          }
                       }

如果您想要StoragefileSystem使用上述任何一种


推荐阅读