你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Microsoft.ApiManagement service/诊断 2022-08-01

Bicep 资源定义

可以使用面向以下操作部署服务/诊断资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.ApiManagement/service/诊断 资源,请将以下 Bicep 添加到模板。

resource symbolicname 'Microsoft.ApiManagement/service/diagnostics@2022-08-01' = {
  name: 'string'
  parent: resourceSymbolicName
  properties: {
    alwaysLog: 'allErrors'
    backend: {
      request: {
        body: {
          bytes: int
        }
        dataMasking: {
          headers: [
            {
              mode: 'string'
              value: 'string'
            }
          ]
          queryParams: [
            {
              mode: 'string'
              value: 'string'
            }
          ]
        }
        headers: [
          'string'
        ]
      }
      response: {
        body: {
          bytes: int
        }
        dataMasking: {
          headers: [
            {
              mode: 'string'
              value: 'string'
            }
          ]
          queryParams: [
            {
              mode: 'string'
              value: 'string'
            }
          ]
        }
        headers: [
          'string'
        ]
      }
    }
    frontend: {
      request: {
        body: {
          bytes: int
        }
        dataMasking: {
          headers: [
            {
              mode: 'string'
              value: 'string'
            }
          ]
          queryParams: [
            {
              mode: 'string'
              value: 'string'
            }
          ]
        }
        headers: [
          'string'
        ]
      }
      response: {
        body: {
          bytes: int
        }
        dataMasking: {
          headers: [
            {
              mode: 'string'
              value: 'string'
            }
          ]
          queryParams: [
            {
              mode: 'string'
              value: 'string'
            }
          ]
        }
        headers: [
          'string'
        ]
      }
    }
    httpCorrelationProtocol: 'string'
    logClientIp: bool
    loggerId: 'string'
    metrics: bool
    operationNameFormat: 'string'
    sampling: {
      percentage: int
      samplingType: 'fixed'
    }
    verbosity: 'string'
  }
}

属性值

service/diagnostics

名称 说明
name 资源名称

了解如何在 Bicep 中设置子资源的名称和类型。
字符串 (必需)

字符限制:1-80

有效字符:
字母数字和连字符。

以字母开头且以字母数字结尾。
父级 (parent) 在 Bicep 中,可以为子资源指定父资源。 仅当子资源在父资源外部声明时,才需要添加此属性。

有关详细信息,请参阅 父资源之外的子资源
类型为:service 的资源的符号名称
properties 诊断实体协定属性。 DiagnosticContractProperties

DiagnosticContractProperties

名称 说明
alwaysLog 指定不应应用哪种类型的消息采样设置。 “allErrors”
后端 传入/传出 HTTP 消息到后端的诊断设置 PipelineDiagnosticSettings
前端 传入/传出 HTTP 消息到网关的诊断设置。 PipelineDiagnosticSettings
httpCorrelationProtocol 设置要用于 Application Insights 诊断的相关协议。 “旧版”
“None”
'W3C'
logClientIp 记录 ClientIP。 默认值为 false。 bool
loggerId 目标记录器的资源 ID。 字符串 (必需)
指标 通过发出指标策略发出自定义指标。 仅适用于 Application Insights 诊断设置。 bool
operationNameFormat Application Insights 遥测的操作名称的格式。 默认值为 Name。 'Name'
'Url'
取样 (sampling) 诊断的采样设置。 SamplingSettings
冗长 应用于跟踪策略发出的跟踪的详细级别。 “error”
'information'
“verbose”

PipelineDiagnosticSettings

名称 说明
request 请求的诊断设置。 HttpMessageDiagnostic
响应 响应的诊断设置。 HttpMessageDiagnostic

HttpMessageDiagnostic

名称 说明
body 正文日志记录设置。 BodyDiagnosticSettings
dataMasking 数据掩码设置。 DataMasking
headers 要记录的 HTTP 标头的数组。 string[]

BodyDiagnosticSettings

名称 说明
字节 要记录的请求正文字节数。 int

DataMasking

名称 说明
headers 标头的掩码设置 DataMaskingEntity[]
queryParams URL 查询参数的掩码设置 DataMaskingEntity[]

DataMaskingEntity

名称 说明
mode 数据掩码模式。 “Hide”
“Mask”
value 要屏蔽 (实体的名称,例如标头的名称或) 查询参数的名称。 字符串

SamplingSettings

名称 说明
percentage 固定速率采样的采样率。 int
samplingType 采样类型。 “fixed”

快速入门模板

以下快速入门模板部署此资源类型。

模板 说明
使用应用网关在内部 VNet 中创建API 管理

部署到 Azure
此模板演示如何在受 Azure 应用程序网关 保护的专用网络上创建 Azure API 管理 实例。
使用内部API 管理和 Web 应用应用程序网关

部署到 Azure
应用程序网关将 Internet 流量路由到虚拟网络 (内部模式) API 管理 实例,该实例为 Azure Web 应用中托管的 Web API 提供服务。

ARM 模板资源定义

可以使用面向以下操作部署服务/诊断资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.ApiManagement/service/诊断 资源,请将以下 JSON 添加到模板。

{
  "type": "Microsoft.ApiManagement/service/diagnostics",
  "apiVersion": "2022-08-01",
  "name": "string",
  "properties": {
    "alwaysLog": "allErrors",
    "backend": {
      "request": {
        "body": {
          "bytes": "int"
        },
        "dataMasking": {
          "headers": [
            {
              "mode": "string",
              "value": "string"
            }
          ],
          "queryParams": [
            {
              "mode": "string",
              "value": "string"
            }
          ]
        },
        "headers": [ "string" ]
      },
      "response": {
        "body": {
          "bytes": "int"
        },
        "dataMasking": {
          "headers": [
            {
              "mode": "string",
              "value": "string"
            }
          ],
          "queryParams": [
            {
              "mode": "string",
              "value": "string"
            }
          ]
        },
        "headers": [ "string" ]
      }
    },
    "frontend": {
      "request": {
        "body": {
          "bytes": "int"
        },
        "dataMasking": {
          "headers": [
            {
              "mode": "string",
              "value": "string"
            }
          ],
          "queryParams": [
            {
              "mode": "string",
              "value": "string"
            }
          ]
        },
        "headers": [ "string" ]
      },
      "response": {
        "body": {
          "bytes": "int"
        },
        "dataMasking": {
          "headers": [
            {
              "mode": "string",
              "value": "string"
            }
          ],
          "queryParams": [
            {
              "mode": "string",
              "value": "string"
            }
          ]
        },
        "headers": [ "string" ]
      }
    },
    "httpCorrelationProtocol": "string",
    "logClientIp": "bool",
    "loggerId": "string",
    "metrics": "bool",
    "operationNameFormat": "string",
    "sampling": {
      "percentage": "int",
      "samplingType": "fixed"
    },
    "verbosity": "string"
  }
}

属性值

service/diagnostics

名称 说明 Value
type 资源类型 “Microsoft.ApiManagement/service/诊断”
apiVersion 资源 API 版本 '2022-08-01'
name 资源名称

了解如何在 JSON ARM 模板中设置子资源的名称和类型。
字符串 (必需)

字符限制:1-80

有效字符:
字母数字和连字符。

以字母开头且以字母数字结尾。
properties 诊断实体协定属性。 DiagnosticContractProperties

DiagnosticContractProperties

名称 说明
alwaysLog 指定不应应用哪种类型的消息采样设置。 “allErrors”
后端 传入/传出 HTTP 消息到后端的诊断设置 PipelineDiagnosticSettings
前端 传入/传出 HTTP 消息到网关的诊断设置。 PipelineDiagnosticSettings
httpCorrelationProtocol 设置要用于 Application Insights 诊断的相关协议。 “旧版”
“None”
'W3C'
logClientIp 记录 ClientIP。 默认值为 false。 bool
loggerId 目标记录器的资源 ID。 字符串 (必需)
指标 通过发出指标策略发出自定义指标。 仅适用于 Application Insights 诊断设置。 bool
operationNameFormat Application Insights 遥测的操作名称的格式。 默认值为“名称”。 “Name”
“Url”
取样 (sampling) 诊断的采样设置。 SamplingSettings
冗长 应用于跟踪策略发出的跟踪的详细级别。 “error”
“信息”
“verbose”

PipelineDiagnosticSettings

名称 说明
request 请求的诊断设置。 HttpMessageDiagnostic
响应 响应的诊断设置。 HttpMessageDiagnostic

HttpMessageDiagnostic

名称 说明
body 正文日志记录设置。 BodyDiagnosticSettings
dataMasking 数据掩码设置。 DataMasking
headers 要记录的 HTTP 标头数组。 string[]

BodyDiagnosticSettings

名称 说明
字节 要记录的请求正文字节数。 int

DataMasking

名称 说明
headers 标头的掩码设置 DataMaskingEntity[]
queryParams URL 查询参数的掩码设置 DataMaskingEntity[]

DataMaskingEntity

名称 说明
mode 数据掩码模式。 “隐藏”
“Mask”
value 要屏蔽的实体的名称 (例如标头的名称或查询参数) 。 字符串

SamplingSettings

名称 说明
percentage 固定速率采样的采样率。 int
samplingType 采样类型。 “fixed”

快速入门模板

以下快速入门模板部署此资源类型。

模板 说明
使用应用网关在内部 VNet 中创建API 管理

部署到 Azure
此模板演示如何在受Azure 应用程序网关保护的专用网络上创建 Azure API 管理 实例。
使用内部API 管理和 Web 应用应用程序网关

部署到 Azure
应用程序网关将 Internet 流量路由到虚拟网络 (内部模式) API 管理 实例,该实例为 Azure Web 应用中托管的 Web API 提供服务。

Terraform (AzAPI 提供程序) 资源定义

可以使用针对以下操作部署服务/诊断资源类型:

  • 资源组

有关每个 API 版本中更改的属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.ApiManagement/service/诊断 资源,请将以下 Terraform 添加到模板。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ApiManagement/service/diagnostics@2022-08-01"
  name = "string"
  parent_id = "string"
  body = jsonencode({
    properties = {
      alwaysLog = "allErrors"
      backend = {
        request = {
          body = {
            bytes = int
          }
          dataMasking = {
            headers = [
              {
                mode = "string"
                value = "string"
              }
            ]
            queryParams = [
              {
                mode = "string"
                value = "string"
              }
            ]
          }
          headers = [
            "string"
          ]
        }
        response = {
          body = {
            bytes = int
          }
          dataMasking = {
            headers = [
              {
                mode = "string"
                value = "string"
              }
            ]
            queryParams = [
              {
                mode = "string"
                value = "string"
              }
            ]
          }
          headers = [
            "string"
          ]
        }
      }
      frontend = {
        request = {
          body = {
            bytes = int
          }
          dataMasking = {
            headers = [
              {
                mode = "string"
                value = "string"
              }
            ]
            queryParams = [
              {
                mode = "string"
                value = "string"
              }
            ]
          }
          headers = [
            "string"
          ]
        }
        response = {
          body = {
            bytes = int
          }
          dataMasking = {
            headers = [
              {
                mode = "string"
                value = "string"
              }
            ]
            queryParams = [
              {
                mode = "string"
                value = "string"
              }
            ]
          }
          headers = [
            "string"
          ]
        }
      }
      httpCorrelationProtocol = "string"
      logClientIp = bool
      loggerId = "string"
      metrics = bool
      operationNameFormat = "string"
      sampling = {
        percentage = int
        samplingType = "fixed"
      }
      verbosity = "string"
    }
  })
}

属性值

service/diagnostics

名称 说明 Value
type 资源类型 “Microsoft.ApiManagement/service/诊断@2022-08-01”
name 资源名称 字符串 (必需)

字符限制:1-80

有效字符:
字母数字和连字符。

以字母开头且以字母数字结尾。
parent_id 此资源的父资源 ID。 类型为“服务”的资源的 ID
properties 诊断实体协定属性。 DiagnosticContractProperties

DiagnosticContractProperties

名称 说明
alwaysLog 指定不应应用哪些类型的消息采样设置。 “allErrors”
后端 传入/传出 HTTP 消息到后端的诊断设置 PipelineDiagnosticSettings
前端 传入/传出 HTTP 消息到网关的诊断设置。 PipelineDiagnosticSettings
httpCorrelationProtocol 设置要用于 Application Insights 诊断的相关协议。 “旧版”
"None"
“W3C”
logClientIp 记录 ClientIP。 默认值为 false。 bool
loggerId 目标记录器的资源 ID。 字符串 (必需)
指标 通过发出指标策略发出自定义指标。 仅适用于 Application Insights 诊断设置。 bool
operationNameFormat Application Insights 遥测的操作名称的格式。 默认值为“名称”。 “Name”
“Url”
取样 (sampling) 诊断的采样设置。 SamplingSettings
冗长 应用于跟踪策略发出的跟踪的详细级别。 “error”
“information”
“verbose”

PipelineDiagnosticSettings

名称 说明
request 请求的诊断设置。 HttpMessageDiagnostic
响应 响应的诊断设置。 HttpMessageDiagnostic

HttpMessageDiagnostic

名称 说明
body 正文日志记录设置。 BodyDiagnosticSettings
dataMasking 数据掩码设置。 DataMasking
headers 要记录的 HTTP 标头数组。 string[]

BodyDiagnosticSettings

名称 说明
字节 要记录的请求正文字节数。 int

DataMasking

名称 说明
headers 标头的掩码设置 DataMaskingEntity[]
queryParams URL 查询参数的掩码设置 DataMaskingEntity[]

DataMaskingEntity

名称 说明
mode 数据掩码模式。 “Hide”
“Mask”
value 要屏蔽 (实体的名称,例如标头的名称或) 查询参数的名称。 字符串

SamplingSettings

名称 说明
percentage 固定速率采样的采样率。 int
samplingType 采样类型。 “fixed”