Microsoft.ApiManagement 服務/診斷 2021-08-01

Bicep 資源定義

服務/診斷資源類型可以使用目標作業來部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.ApiManagement/service/diagnostics 資源,請將下列 Bicep 新增至範本。

resource symbolicname 'Microsoft.ApiManagement/service/diagnostics@2021-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

名字 描述 價值
名字 資源名稱

請參閱如何在 Bicep 中設定子資源的名稱和類型。
字串 (必要)

字元限制:1-80

合法字元:
英數位元和連字元。

以字母開頭,並以英數位元結尾。
父母 在 Bicep 中,您可以指定子資源的父資源。 只有在父資源外部宣告子資源時,才需要新增這個屬性。

如需詳細資訊,請參閱 父資源外部的子資源
類型的資源符號名稱:服務
性能 診斷實體合約屬性。 DiagnosticContractProperties

DiagnosticContractProperties

名字 描述 價值
alwaysLog 指定不應該套用何種類型的訊息取樣設定。 'allErrors'
backend 傳入/傳出 HTTP 訊息至後端的診斷設定 PipelineDiagnosticSettings
前端 傳入/傳出 HTTP 訊息至閘道的診斷設定。 PipelineDiagnosticSettings
httpCorrelationProtocol 設定要用於Application Insights診斷的相互關聯通訊協定。 'Legacy'
'None'
'W3C'
logClientIp 記錄 ClientIP。 默認值為 false。 bool
loggerId 目標記錄器的資源識別碼。 字串 (必要)
指標 透過發出計量原則發出自定義計量。 僅適用於 Application Insights 診斷設定。 bool
operationNameFormat Application Insights 遙測作業名稱的格式。 預設值為 Name。 'Name'
'Url'
採樣 診斷的取樣設定。 SamplingSettings
冗長 套用至追蹤原則所發出之追蹤的詳細資訊層級。 'error'
'information'
'verbose'

PipelineDiagnosticSettings

名字 描述 價值
請求 要求的診斷設定。 HttpMessageDiagnostic
回應 回應的診斷設定。 HttpMessageDiagnostic

HttpMessageDiagnostic

名字 描述 價值
身體 本文記錄設定。 BodyDiagnosticSettings
dataMasking 數據遮罩設定。 DataMasking
要記錄的 HTTP 標頭陣列。 string[]

BodyDiagnosticSettings

名字 描述 價值
位元組 要記錄的要求本文字節數目。 int

約束:
最大值 = 8192

DataMasking

名字 描述 價值
標頭的遮罩設定 DataMaskingEntity[]
queryParams Url 查詢參數的遮罩設定 DataMaskingEntity[]

DataMaskingEntity

名字 描述 價值
模式 數據遮罩模式。 'Hide'
'Mask'
價值 要遮罩的實體名稱(例如標頭的名稱或查詢參數)。 字串

SamplingSettings

名字 描述 價值
百分比 固定速率取樣的取樣率。 int

約束:
最小值 = 0
最大值 = 100
samplingType 取樣類型。 'fixed'

快速入門範本

下列快速入門範本會部署此資源類型。

範本 描述
使用應用程式閘道在內部 VNet 中建立 API 管理

部署至 Azure
此範本示範如何在受 Azure 應用程式閘道保護的專用網上建立 Azure API 管理的實例。
使用內部 API 管理和 Web 應用程式 應用程式閘道

部署至 Azure
應用程式閘道會將因特網流量路由傳送至虛擬網路(內部模式)API 管理實例,此實例會服務裝載於 Azure Web 應用程式中的 Web API。

ARM 樣本資源定義

服務/診斷資源類型可以使用目標作業來部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.ApiManagement/service/diagnostics 資源,請將下列 JSON 新增至範本。

{
  "type": "Microsoft.ApiManagement/service/diagnostics",
  "apiVersion": "2021-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

名字 描述 價值
類型 資源類型 'Microsoft.ApiManagement/service/diagnostics'
apiVersion 資源 API 版本 '2021-08-01'
名字 資源名稱

請參閱如何在JSON ARM 範本中設定子資源的名稱和類型。
字串 (必要)

字元限制:1-80

合法字元:
英數位元和連字元。

以字母開頭,並以英數位元結尾。
性能 診斷實體合約屬性。 DiagnosticContractProperties

DiagnosticContractProperties

名字 描述 價值
alwaysLog 指定不應該套用何種類型的訊息取樣設定。 'allErrors'
backend 傳入/傳出 HTTP 訊息至後端的診斷設定 PipelineDiagnosticSettings
前端 傳入/傳出 HTTP 訊息至閘道的診斷設定。 PipelineDiagnosticSettings
httpCorrelationProtocol 設定要用於Application Insights診斷的相互關聯通訊協定。 'Legacy'
'None'
'W3C'
logClientIp 記錄 ClientIP。 默認值為 false。 bool
loggerId 目標記錄器的資源識別碼。 字串 (必要)
指標 透過發出計量原則發出自定義計量。 僅適用於 Application Insights 診斷設定。 bool
operationNameFormat Application Insights 遙測作業名稱的格式。 預設值為 Name。 'Name'
'Url'
採樣 診斷的取樣設定。 SamplingSettings
冗長 套用至追蹤原則所發出之追蹤的詳細資訊層級。 'error'
'information'
'verbose'

PipelineDiagnosticSettings

名字 描述 價值
請求 要求的診斷設定。 HttpMessageDiagnostic
回應 回應的診斷設定。 HttpMessageDiagnostic

HttpMessageDiagnostic

名字 描述 價值
身體 本文記錄設定。 BodyDiagnosticSettings
dataMasking 數據遮罩設定。 DataMasking
要記錄的 HTTP 標頭陣列。 string[]

BodyDiagnosticSettings

名字 描述 價值
位元組 要記錄的要求本文字節數目。 int

約束:
最大值 = 8192

DataMasking

名字 描述 價值
標頭的遮罩設定 DataMaskingEntity[]
queryParams Url 查詢參數的遮罩設定 DataMaskingEntity[]

DataMaskingEntity

名字 描述 價值
模式 數據遮罩模式。 'Hide'
'Mask'
價值 要遮罩的實體名稱(例如標頭的名稱或查詢參數)。 字串

SamplingSettings

名字 描述 價值
百分比 固定速率取樣的取樣率。 int

約束:
最小值 = 0
最大值 = 100
samplingType 取樣類型。 'fixed'

快速入門範本

下列快速入門範本會部署此資源類型。

範本 描述
使用應用程式閘道在內部 VNet 中建立 API 管理

部署至 Azure
此範本示範如何在受 Azure 應用程式閘道保護的專用網上建立 Azure API 管理的實例。
使用內部 API 管理和 Web 應用程式 應用程式閘道

部署至 Azure
應用程式閘道會將因特網流量路由傳送至虛擬網路(內部模式)API 管理實例,此實例會服務裝載於 Azure Web 應用程式中的 Web API。

Terraform (AzAPI 提供者) 資源定義

服務/診斷資源類型可以使用目標作業來部署:

  • 資源群組

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.ApiManagement/service/diagnostics 資源,請將下列 Terraform 新增至範本。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ApiManagement/service/diagnostics@2021-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

名字 描述 價值
類型 資源類型 “Microsoft.ApiManagement/service/diagnostics@2021-08-01”
名字 資源名稱 字串 (必要)

字元限制:1-80

合法字元:
英數位元和連字元。

以字母開頭,並以英數位元結尾。
parent_id 此資源為父系之資源的標識碼。 類型的資源標識碼:服務
性能 診斷實體合約屬性。 DiagnosticContractProperties

DiagnosticContractProperties

名字 描述 價值
alwaysLog 指定不應該套用何種類型的訊息取樣設定。 “allErrors”
backend 傳入/傳出 HTTP 訊息至後端的診斷設定 PipelineDiagnosticSettings
前端 傳入/傳出 HTTP 訊息至閘道的診斷設定。 PipelineDiagnosticSettings
httpCorrelationProtocol 設定要用於Application Insights診斷的相互關聯通訊協定。 “Legacy”
“None”
“W3C”
logClientIp 記錄 ClientIP。 默認值為 false。 bool
loggerId 目標記錄器的資源識別碼。 字串 (必要)
指標 透過發出計量原則發出自定義計量。 僅適用於 Application Insights 診斷設定。 bool
operationNameFormat Application Insights 遙測作業名稱的格式。 預設值為 Name。 “Name”
“Url”
採樣 診斷的取樣設定。 SamplingSettings
冗長 套用至追蹤原則所發出之追蹤的詳細資訊層級。 “error”
“information”
“verbose”

PipelineDiagnosticSettings

名字 描述 價值
請求 要求的診斷設定。 HttpMessageDiagnostic
回應 回應的診斷設定。 HttpMessageDiagnostic

HttpMessageDiagnostic

名字 描述 價值
身體 本文記錄設定。 BodyDiagnosticSettings
dataMasking 數據遮罩設定。 DataMasking
要記錄的 HTTP 標頭陣列。 string[]

BodyDiagnosticSettings

名字 描述 價值
位元組 要記錄的要求本文字節數目。 int

約束:
最大值 = 8192

DataMasking

名字 描述 價值
標頭的遮罩設定 DataMaskingEntity[]
queryParams Url 查詢參數的遮罩設定 DataMaskingEntity[]

DataMaskingEntity

名字 描述 價值
模式 數據遮罩模式。 “Hide”
“Mask”
價值 要遮罩的實體名稱(例如標頭的名稱或查詢參數)。 字串

SamplingSettings

名字 描述 價值
百分比 固定速率取樣的取樣率。 int

約束:
最小值 = 0
最大值 = 100
samplingType 取樣類型。 “fixed”