You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

部署Azure Data Factory诊断设置报错:资源类型'/'不支持诊断设置

解决Azure Data Factory诊断设置部署错误:The resource type '/' does not support diagnostic settings

错误原因是诊断设置属于目标资源的子资源,不能独立创建,必须明确关联到Azure Data Factory实例。你的代码中未将诊断设置与Data Factory资源绑定,导致Azure无法识别要配置诊断的目标资源,从而抛出该错误。

修正方案有两种,任选其一即可:

方案1:嵌套子资源方式

将诊断设置定义为Data Factory资源的嵌套子资源,这种方式更直观,自动继承父资源的关联关系:

resource dataFactory 'Microsoft.DataFactory/factories@2018-06-01' = {
  name: name
  identity: {
    type: 'SystemAssigned'
  }
  properties: {
    globalParameters: {
      environment: {
        type: 'String'
        value: environmentAbbreviation
      }
    }
  }
  location: location

  // 嵌套诊断设置作为Data Factory的子资源
  resource diagnosticSettings 'providers/diagnosticSettings@2021-05-01-preview' = {
    name: 'ADF-Pipeline-Diagnostics' // 可自定义诊断设置名称,无需与ADF同名
    properties: {
      logs: [
        {
          category: 'PipelineRuns'
          enabled: true
        }
      ]
      workspaceId: resourceId('microsoft.operationalinsights/workspaces', '<Workspace-Name>')
      logAnalyticsDestinationType: null
    }
  }
}

方案2:独立声明并指定作用域

如果不想嵌套,可单独声明诊断设置,但必须通过scope属性指定关联的Data Factory资源,同时资源名称需遵循父资源名称/providers/Microsoft.Insights/诊断设置名称的格式:

resource dataFactory 'Microsoft.DataFactory/factories@2018-06-01' = {
  name: name
  identity: {
    type: 'SystemAssigned'
  }
  properties: {
    globalParameters: {
      environment: {
        type: 'String'
        value: environmentAbbreviation
      }
    }
  }
  location: location
}

resource diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2021-05-01-preview' = {
  name: '${dataFactory.name}/Microsoft.Insights/ADF-Pipeline-Diagnostics'
  scope: dataFactory // 关键:指定作用域为目标Data Factory
  properties: {
    logs: [
      {
        category: 'PipelineRuns'
        enabled: true
      }
    ]
    workspaceId: resourceId('microsoft.operationalinsights/workspaces', '<Workspace-Name>')
    logAnalyticsDestinationType: null
  }
}

注意事项

  • 诊断设置名称可自定义,无需与Data Factory实例名称一致
  • 确保将<Workspace-Name>替换为实际的Log Analytics工作区名称
  • 两种方案都无需手动添加dependsOn,嵌套方式自动依赖父资源,作用域方式会自动处理依赖关系

内容的提问来源于stack exchange,提问作者user989988

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 23:27:45