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

Microsoft.ApiManagement 服务/诊断 2024-06-01-preview

Bicep 资源定义

可以使用目标操作部署服务/诊断资源类型:

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

资源格式

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

resource symbolicname 'Microsoft.ApiManagement/service/diagnostics@2024-06-01-preview' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    alwaysLog: 'string'
    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'
    largeLanguageModel: {
      logs: 'string'
      requests: {
        maxSizeInBytes: int
        messages: 'string'
      }
      responses: {
        maxSizeInBytes: int
        messages: 'string'
      }
    }
    logClientIp: bool
    loggerId: 'string'
    metrics: bool
    operationNameFormat: 'string'
    sampling: {
      percentage: int
      samplingType: 'string'
    }
    verbosity: 'string'
  }
}

属性值

BodyDiagnosticSettings

名字 描述 价值
字节 要记录的请求正文字节数。 int

约束:
最大值 = 8192

DataMasking

名字 描述 价值
标头的掩码设置 DataMaskingEntity[]
queryParams Url 查询参数的掩码设置 DataMaskingEntity[]

DataMaskingEntity

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

DiagnosticContractProperties

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

HttpMessageDiagnostic

名字 描述 价值
身体 正文日志记录设置。 BodyDiagnosticSettings
dataMasking 数据掩码设置。 DataMasking
要记录的 HTTP 标头数组。 string[]

LLMDiagnosticSettings

名字 描述 价值
原木 指定是否应为大型语言模型启用默认诊断。 “disabled”
“enabled”
请求 大型语言模型请求的诊断设置。 LLMMessageDiagnosticSettings
反应 大型语言模型响应的诊断设置。 LLMMessageDiagnosticSettings

LLMMessageDiagnosticSettings

名字 描述 价值
maxSizeInBytes 要记录的消息的最大大小(以字节为单位)。 默认大小为 32KB。 int

约束:
最小值 = 1
最大值 = 262144
消息 指定应记录的消息。 目前只有“全部”选项。 “all”

Microsoft.ApiManagement/service/diagnostics

名字 描述 价值
名字 资源名称 字符串

约束:
最小长度 = 1
最大长度 = 80
模式 = ^[^*#&+:<>?]+$ (必需)
父母 在 Bicep 中,可以为子资源指定父资源。 仅当子资源在父资源外部声明时,才需要添加此属性。

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

PipelineDiagnosticSettings

名字 描述 价值
请求 请求的诊断设置。 HttpMessageDiagnostic
响应 响应的诊断设置。 HttpMessageDiagnostic

SamplingSettings

名字 描述 价值
百分比 固定速率采样的采样率。 int

约束:
最小值 = 0
最大值 = 100
samplingType 采样类型。 “fixed”

快速入门示例

以下快速入门示例部署此资源类型。

Bicep 文件 描述
使用内部 API 管理和 Web 应用 应用程序网关 应用程序网关将 Internet 流量路由到虚拟网络(内部模式)API 管理实例,该实例服务 Azure Web 应用中托管的 Web API。
使用应用网关在内部 VNet 中创建 API 管理 此模板演示如何在受 Azure 应用程序网关保护的专用网络上创建 Azure API 管理的实例。

ARM 模板资源定义

可以使用目标操作部署服务/诊断资源类型:

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

资源格式

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

{
  "type": "Microsoft.ApiManagement/service/diagnostics",
  "apiVersion": "2024-06-01-preview",
  "name": "string",
  "properties": {
    "alwaysLog": "string",
    "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",
    "largeLanguageModel": {
      "logs": "string",
      "requests": {
        "maxSizeInBytes": "int",
        "messages": "string"
      },
      "responses": {
        "maxSizeInBytes": "int",
        "messages": "string"
      }
    },
    "logClientIp": "bool",
    "loggerId": "string",
    "metrics": "bool",
    "operationNameFormat": "string",
    "sampling": {
      "percentage": "int",
      "samplingType": "string"
    },
    "verbosity": "string"
  }
}

属性值

BodyDiagnosticSettings

名字 描述 价值
字节 要记录的请求正文字节数。 int

约束:
最大值 = 8192

DataMasking

名字 描述 价值
标头的掩码设置 DataMaskingEntity[]
queryParams Url 查询参数的掩码设置 DataMaskingEntity[]

DataMaskingEntity

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

DiagnosticContractProperties

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

HttpMessageDiagnostic

名字 描述 价值
身体 正文日志记录设置。 BodyDiagnosticSettings
dataMasking 数据掩码设置。 DataMasking
要记录的 HTTP 标头数组。 string[]

LLMDiagnosticSettings

名字 描述 价值
原木 指定是否应为大型语言模型启用默认诊断。 “disabled”
“enabled”
请求 大型语言模型请求的诊断设置。 LLMMessageDiagnosticSettings
反应 大型语言模型响应的诊断设置。 LLMMessageDiagnosticSettings

LLMMessageDiagnosticSettings

名字 描述 价值
maxSizeInBytes 要记录的消息的最大大小(以字节为单位)。 默认大小为 32KB。 int

约束:
最小值 = 1
最大值 = 262144
消息 指定应记录的消息。 目前只有“全部”选项。 “all”

Microsoft.ApiManagement/service/diagnostics

名字 描述 价值
apiVersion API 版本 '2024-06-01-preview'
名字 资源名称 字符串

约束:
最小长度 = 1
最大长度 = 80
模式 = ^[^*#&+:<>?]+$ (必需)
性能 诊断实体协定属性。 DiagnosticContractProperties
类型 资源类型 “Microsoft.ApiManagement/service/diagnostics”

PipelineDiagnosticSettings

名字 描述 价值
请求 请求的诊断设置。 HttpMessageDiagnostic
响应 响应的诊断设置。 HttpMessageDiagnostic

SamplingSettings

名字 描述 价值
百分比 固定速率采样的采样率。 int

约束:
最小值 = 0
最大值 = 100
samplingType 采样类型。 “fixed”

快速入门模板

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

模板 描述
使用内部 API 管理和 Web 应用 应用程序网关

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

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

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

可以使用目标操作部署服务/诊断资源类型:

  • 资源组

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

资源格式

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

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ApiManagement/service/diagnostics@2024-06-01-preview"
  name = "string"
  body = jsonencode({
    properties = {
      alwaysLog = "string"
      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"
      largeLanguageModel = {
        logs = "string"
        requests = {
          maxSizeInBytes = int
          messages = "string"
        }
        responses = {
          maxSizeInBytes = int
          messages = "string"
        }
      }
      logClientIp = bool
      loggerId = "string"
      metrics = bool
      operationNameFormat = "string"
      sampling = {
        percentage = int
        samplingType = "string"
      }
      verbosity = "string"
    }
  })
}

属性值

BodyDiagnosticSettings

名字 描述 价值
字节 要记录的请求正文字节数。 int

约束:
最大值 = 8192

DataMasking

名字 描述 价值
标头的掩码设置 DataMaskingEntity[]
queryParams Url 查询参数的掩码设置 DataMaskingEntity[]

DataMaskingEntity

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

DiagnosticContractProperties

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

HttpMessageDiagnostic

名字 描述 价值
身体 正文日志记录设置。 BodyDiagnosticSettings
dataMasking 数据掩码设置。 DataMasking
要记录的 HTTP 标头数组。 string[]

LLMDiagnosticSettings

名字 描述 价值
原木 指定是否应为大型语言模型启用默认诊断。 “disabled”
“enabled”
请求 大型语言模型请求的诊断设置。 LLMMessageDiagnosticSettings
反应 大型语言模型响应的诊断设置。 LLMMessageDiagnosticSettings

LLMMessageDiagnosticSettings

名字 描述 价值
maxSizeInBytes 要记录的消息的最大大小(以字节为单位)。 默认大小为 32KB。 int

约束:
最小值 = 1
最大值 = 262144
消息 指定应记录的消息。 目前只有“全部”选项。 “all”

Microsoft.ApiManagement/service/diagnostics

名字 描述 价值
名字 资源名称 字符串

约束:
最小长度 = 1
最大长度 = 80
模式 = ^[^*#&+:<>?]+$ (必需)
parent_id 此资源的父资源的 ID。 类型资源的 ID:服务
性能 诊断实体协定属性。 DiagnosticContractProperties
类型 资源类型 “Microsoft.ApiManagement/service/diagnostics@2024-06-01-preview”

PipelineDiagnosticSettings

名字 描述 价值
请求 请求的诊断设置。 HttpMessageDiagnostic
响应 响应的诊断设置。 HttpMessageDiagnostic

SamplingSettings

名字 描述 价值
百分比 固定速率采样的采样率。 int

约束:
最小值 = 0
最大值 = 100
samplingType 采样类型。 “fixed”