Diagnostic - Create Or Update

Membuat Diagnostik baru atau memperbarui yang sudah ada.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics/{diagnosticId}?api-version=2022-08-01

Parameter URI

Nama Dalam Diperlukan Jenis Deskripsi
diagnosticId
path True

string

Pengidentifikasi diagnostik. Harus unik dalam instans layanan API Management saat ini.

Regex pattern: ^[^*#&+:<>?]+$

resourceGroupName
path True

string

Nama grup sumber daya. Nama tidak peka huruf besar/kecil.

serviceName
path True

string

Nama layanan API Management.

Regex pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

subscriptionId
path True

string

ID langganan target.

api-version
query True

string

Versi API yang digunakan untuk operasi ini.

Header Permintaan

Nama Diperlukan Jenis Deskripsi
If-Match

string

ETag Entitas. Tidak diperlukan saat membuat entitas, tetapi diperlukan saat memperbarui entitas.

Isi Permintaan

Nama Diperlukan Jenis Deskripsi
properties.loggerId True

string

Id Sumber Daya pencatat target.

properties.alwaysLog

AlwaysLog

Menentukan jenis pengaturan pengambilan sampel pesan apa yang tidak boleh diterapkan.

properties.backend

PipelineDiagnosticSettings

Pengaturan diagnostik untuk pesan HTTP masuk/keluar ke Backend

properties.frontend

PipelineDiagnosticSettings

Pengaturan diagnostik untuk pesan HTTP masuk/keluar ke Gateway.

properties.httpCorrelationProtocol

HttpCorrelationProtocol

Mengatur protokol korelasi yang akan digunakan untuk diagnostik Application Insights.

properties.logClientIp

boolean

Catat ClientIP. Defaultnya adalah false.

properties.metrics

boolean

Keluarkan metrik kustom melalui kebijakan emit-metric. Hanya berlaku untuk pengaturan diagnostik Application Insights.

properties.operationNameFormat

OperationNameFormat

Format telemetri Nama Operasi untuk Application Insights. Defaultnya adalah Nama.

properties.sampling

SamplingSettings

Pengaturan pengambilan sampel untuk Diagnostik.

properties.verbosity

Verbosity

Tingkat verbositas yang diterapkan pada jejak yang dipancarkan oleh kebijakan pelacakan.

Respons

Nama Jenis Deskripsi
200 OK

DiagnosticContract

Diagnostik berhasil diperbarui

Headers

ETag: string

201 Created

DiagnosticContract

Diagnostik berhasil dibuat.

Headers

ETag: string

Other Status Codes

ErrorResponse

Respons kesalahan yang menjelaskan mengapa operasi gagal.

Keamanan

azure_auth

Alur OAuth2 Azure Active Directory.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Nama Deskripsi
user_impersonation meniru akun pengguna Anda

Contoh

ApiManagementCreateDiagnostic

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights?api-version=2022-08-01

{
  "properties": {
    "alwaysLog": "allErrors",
    "loggerId": "/loggers/azuremonitor",
    "sampling": {
      "samplingType": "fixed",
      "percentage": 50
    },
    "frontend": {
      "request": {
        "headers": [
          "Content-type"
        ],
        "body": {
          "bytes": 512
        }
      },
      "response": {
        "headers": [
          "Content-type"
        ],
        "body": {
          "bytes": 512
        }
      }
    },
    "backend": {
      "request": {
        "headers": [
          "Content-type"
        ],
        "body": {
          "bytes": 512
        }
      },
      "response": {
        "headers": [
          "Content-type"
        ],
        "body": {
          "bytes": 512
        }
      }
    }
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights",
  "type": "Microsoft.ApiManagement/service/diagnostics",
  "name": "applicationinsights",
  "properties": {
    "alwaysLog": "allErrors",
    "loggerId": "/loggers/azuremonitor",
    "sampling": {
      "samplingType": "fixed",
      "percentage": 50
    },
    "frontend": {
      "request": {
        "headers": [
          "Content-type"
        ],
        "body": {
          "bytes": 512
        }
      },
      "response": {
        "headers": [
          "Content-type"
        ],
        "body": {
          "bytes": 512
        }
      }
    },
    "backend": {
      "request": {
        "headers": [
          "Content-type"
        ],
        "body": {
          "bytes": 512
        }
      },
      "response": {
        "headers": [
          "Content-type"
        ],
        "body": {
          "bytes": 512
        }
      }
    }
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights",
  "type": "Microsoft.ApiManagement/service/diagnostics",
  "name": "applicationinsights",
  "properties": {
    "alwaysLog": "allErrors",
    "loggerId": "/loggers/applicationinsights",
    "sampling": {
      "samplingType": "fixed",
      "percentage": 50
    },
    "frontend": {
      "request": {
        "headers": [
          "Content-type"
        ],
        "body": {
          "bytes": 512
        }
      },
      "response": {
        "headers": [
          "Content-type"
        ],
        "body": {
          "bytes": 512
        }
      }
    },
    "backend": {
      "request": {
        "headers": [
          "Content-type"
        ],
        "body": {
          "bytes": 512
        }
      },
      "response": {
        "headers": [
          "Content-type"
        ],
        "body": {
          "bytes": 512
        }
      }
    }
  }
}

Definisi

Nama Deskripsi
AlwaysLog

Menentukan jenis pengaturan pengambilan sampel pesan apa yang tidak boleh diterapkan.

BodyDiagnosticSettings

Pengaturan pengelogan isi.

DataMasking
DataMaskingEntity
DataMaskingMode

Mode masking data.

DiagnosticContract

Detail diagnostik.

ErrorFieldContract

Kontrak Bidang Kesalahan.

ErrorResponse

Respons Kesalahan.

HttpCorrelationProtocol

Mengatur protokol korelasi yang akan digunakan untuk diagnostik Application Insights.

HttpMessageDiagnostic

Pengaturan diagnostik pesan http.

OperationNameFormat

Format telemetri Nama Operasi untuk Application Insights. Defaultnya adalah Nama.

PipelineDiagnosticSettings

Pengaturan diagnostik untuk pesan HTTP masuk/keluar ke Gateway.

SamplingSettings

Pengaturan pengambilan sampel untuk Diagnostik.

SamplingType

Jenis pengambilan sampel.

Verbosity

Tingkat verbositas yang diterapkan pada jejak yang dipancarkan oleh kebijakan pelacakan.

AlwaysLog

Menentukan jenis pengaturan pengambilan sampel pesan apa yang tidak boleh diterapkan.

Nama Jenis Deskripsi
allErrors

string

Selalu catat semua permintaan yang salah terlepas dari pengaturan pengambilan sampel.

BodyDiagnosticSettings

Pengaturan pengelogan isi.

Nama Jenis Deskripsi
bytes

integer

Jumlah byte isi permintaan untuk dicatat.

DataMasking

Nama Jenis Deskripsi
headers

DataMaskingEntity[]

Pengaturan masking untuk header

queryParams

DataMaskingEntity[]

Pengaturan masking untuk parameter kueri Url

DataMaskingEntity

Nama Jenis Deskripsi
mode

DataMaskingMode

Mode masking data.

value

string

Nama entitas yang akan disamarkan (misalnya nama header atau parameter kueri).

DataMaskingMode

Mode masking data.

Nama Jenis Deskripsi
Hide

string

Sembunyikan keberadaan entitas.

Mask

string

Menutupi nilai entitas.

DiagnosticContract

Detail diagnostik.

Nama Jenis Deskripsi
id

string

ID sumber daya yang sepenuhnya memenuhi syarat untuk sumber daya. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

Nama sumber daya.

properties.alwaysLog

AlwaysLog

Menentukan jenis pengaturan pengambilan sampel pesan apa yang tidak boleh diterapkan.

properties.backend

PipelineDiagnosticSettings

Pengaturan diagnostik untuk pesan HTTP masuk/keluar ke Backend

properties.frontend

PipelineDiagnosticSettings

Pengaturan diagnostik untuk pesan HTTP masuk/keluar ke Gateway.

properties.httpCorrelationProtocol

HttpCorrelationProtocol

Mengatur protokol korelasi yang akan digunakan untuk diagnostik Application Insights.

properties.logClientIp

boolean

Catat ClientIP. Defaultnya adalah false.

properties.loggerId

string

Id Sumber Daya pencatat target.

properties.metrics

boolean

Keluarkan metrik kustom melalui kebijakan emit-metric. Hanya berlaku untuk pengaturan diagnostik Application Insights.

properties.operationNameFormat

OperationNameFormat

Format telemetri Nama Operasi untuk Application Insights. Defaultnya adalah Nama.

properties.sampling

SamplingSettings

Pengaturan pengambilan sampel untuk Diagnostik.

properties.verbosity

Verbosity

Tingkat verbositas yang diterapkan pada jejak yang dipancarkan oleh kebijakan pelacakan.

type

string

Jenis sumber daya. Misalnya "Microsoft.Compute/virtualMachines" atau "Microsoft.Storage/storageAccounts"

ErrorFieldContract

Kontrak Bidang Kesalahan.

Nama Jenis Deskripsi
code

string

Kode kesalahan tingkat properti.

message

string

Representasi kesalahan tingkat properti yang dapat dibaca manusia.

target

string

Nama properti.

ErrorResponse

Respons Kesalahan.

Nama Jenis Deskripsi
error.code

string

Kode kesalahan yang ditentukan layanan. Kode ini berfungsi sebagai sub-status untuk kode kesalahan HTTP yang ditentukan dalam respons.

error.details

ErrorFieldContract[]

Daftar bidang yang tidak valid dikirim dalam permintaan, jika terjadi kesalahan validasi.

error.message

string

Representasi kesalahan yang dapat dibaca manusia.

HttpCorrelationProtocol

Mengatur protokol korelasi yang akan digunakan untuk diagnostik Application Insights.

Nama Jenis Deskripsi
Legacy

string

Suntikkan header Request-Id dan Request-Context dengan data korelasi permintaan. Lihat https://github.com/dotnet/corefx/blob/master/src/System.Diagnostics.DiagnosticSource/src/HttpCorrelationProtocol.md.

None

string

Jangan membaca dan menyuntikkan header korelasi.

W3C

string

Suntikkan header Konteks Pelacakan. Lihat https://w3c.github.io/trace-context.

HttpMessageDiagnostic

Pengaturan diagnostik pesan http.

Nama Jenis Deskripsi
body

BodyDiagnosticSettings

Pengaturan pengelogan isi.

dataMasking

DataMasking

Pengaturan masking data.

headers

string[]

Array Header HTTP untuk dicatat.

OperationNameFormat

Format telemetri Nama Operasi untuk Application Insights. Defaultnya adalah Nama.

Nama Jenis Deskripsi
Name

string

API_NAME; rev=API_REVISION - OPERATION_NAME

Url

string

HTTP_VERB URL

PipelineDiagnosticSettings

Pengaturan diagnostik untuk pesan HTTP masuk/keluar ke Gateway.

Nama Jenis Deskripsi
request

HttpMessageDiagnostic

Pengaturan diagnostik untuk permintaan.

response

HttpMessageDiagnostic

Pengaturan diagnostik untuk respons.

SamplingSettings

Pengaturan pengambilan sampel untuk Diagnostik.

Nama Jenis Deskripsi
percentage

number

Laju pengambilan sampel untuk pengambilan sampel laju tetap.

samplingType

SamplingType

Jenis pengambilan sampel.

SamplingType

Jenis pengambilan sampel.

Nama Jenis Deskripsi
fixed

string

Pengambilan sampel laju tetap.

Verbosity

Tingkat verbositas yang diterapkan pada jejak yang dipancarkan oleh kebijakan pelacakan.

Nama Jenis Deskripsi
error

string

Hanya jejak dengan 'tingkat keparahan' yang diatur ke 'kesalahan' yang akan dikirim ke pencatat yang dilampirkan ke instans diagnostik ini.

information

string

Jejak dengan 'tingkat keparahan' yang diatur ke 'informasi' dan 'kesalahan' akan dikirim ke pencatat yang dilampirkan ke instans diagnostik ini.

verbose

string

Semua jejak yang dipancarkan oleh kebijakan pelacakan akan dikirim ke pencatat yang dilampirkan ke instans diagnostik ini.