Freigeben über


Diagnostic - Create Or Update

Erstellt eine neue Diagnose oder aktualisiert eine bereits vorhandene

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

URI-Parameter

Name In Erforderlich Typ Beschreibung
diagnosticId
path True

string

Diagnosebezeichner. Muss im aktuellen API Management-Dienst instance eindeutig sein.

RegEx-Muster: ^[^*#&+:<>?]+$

resourceGroupName
path True

string

Der Name der Ressourcengruppe. Für den Namen wird die Groß-/Kleinschreibung nicht beachtet.

serviceName
path True

string

Der Name des API Management-Diensts.

RegEx-Muster: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

subscriptionId
path True

string

Hierbei handelt es sich um die ID des Zielabonnements.

api-version
query True

string

Hierbei handelt es sich um die für diesen Vorgang zu verwendende API-Version.

Anforderungsheader

Name Erforderlich Typ Beschreibung
If-Match

string

ETag der Entität. Nicht erforderlich beim Erstellen einer Entität, aber erforderlich beim Aktualisieren einer Entität.

Anforderungstext

Name Erforderlich Typ Beschreibung
properties.loggerId True

string

Ressourcen-ID einer Zielprotokollierung.

properties.alwaysLog

AlwaysLog

Gibt an, für welche Art von Nachrichten Samplingeinstellungen nicht gelten sollen.

properties.backend

PipelineDiagnosticSettings

Diagnoseeinstellungen für eingehende/ausgehende HTTP-Nachrichten an das Back-End

properties.frontend

PipelineDiagnosticSettings

Diagnoseeinstellungen für eingehende/ausgehende HTTP-Nachrichten an das Gateway.

properties.httpCorrelationProtocol

HttpCorrelationProtocol

Legt das Korrelationsprotokoll fest, das für Application Insights Diagnose verwendet werden soll.

properties.logClientIp

boolean

Protokollieren Sie clientIP. Der Standardwert ist "false".

properties.metrics

boolean

Geben Sie benutzerdefinierte Metriken über eine Ausgabemetrikrichtlinie aus. Gilt nur für Application Insights-Diagnoseeinstellungen.

properties.operationNameFormat

OperationNameFormat

Das Format des Vorgangsnamens für Application Insights-Telemetriedaten. Der Standardwert ist Name.

properties.sampling

SamplingSettings

Samplingeinstellungen für Diagnose.

properties.verbosity

Verbosity

Die Ausführlichkeitsstufe, die auf ablaufverfolgungsrichtlinien ausgegebene Ablaufverfolgungen angewendet wird.

Antworten

Name Typ Beschreibung
200 OK

DiagnosticContract

Diagnose erfolgreich aktualisiert

Header

ETag: string

201 Created

DiagnosticContract

Die Diagnose wurde erfolgreich erstellt.

Header

ETag: string

Other Status Codes

ErrorResponse

Fehlerantwort mit Beschreibung des Grunds für den Fehler.

Sicherheit

azure_auth

Azure Active Directory OAuth2-Flow.

Typ: oauth2
Ablauf: implicit
Autorisierungs-URL: https://login.microsoftonline.com/common/oauth2/authorize

Bereiche

Name Beschreibung
user_impersonation Identitätswechsel Ihres Benutzerkontos

Beispiele

ApiManagementCreateDiagnostic

Beispielanforderung

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
        }
      }
    }
  }
}

Beispiel für eine Antwort

{
  "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
        }
      }
    }
  }
}

Definitionen

Name Beschreibung
AlwaysLog

Gibt an, für welche Art von Nachrichten Samplingeinstellungen nicht gelten sollen.

BodyDiagnosticSettings

Einstellungen für die Textprotokollierung.

DataMasking
DataMaskingEntity
DataMaskingMode

Datenmaskierungsmodus.

DiagnosticContract

Diagnosedetails.

ErrorFieldContract

Fehler Feldvertrag.

ErrorResponse

Fehlerantwort.

HttpCorrelationProtocol

Legt das Korrelationsprotokoll fest, das für Application Insights Diagnose verwendet werden soll.

HttpMessageDiagnostic

Diagnoseeinstellungen für HTTP-Nachrichten.

OperationNameFormat

Das Format des Vorgangsnamens für Application Insights-Telemetriedaten. Der Standardwert ist Name.

PipelineDiagnosticSettings

Diagnoseeinstellungen für eingehende/ausgehende HTTP-Nachrichten an das Gateway.

SamplingSettings

Samplingeinstellungen für Diagnose.

SamplingType

Samplingtyp.

Verbosity

Die Ausführlichkeitsstufe, die auf ablaufverfolgungsrichtlinien ausgegebene Ablaufverfolgungen angewendet wird.

AlwaysLog

Gibt an, für welche Art von Nachrichten Samplingeinstellungen nicht gelten sollen.

Name Typ Beschreibung
allErrors

string

Protokollieren Sie immer alle fehlerhaften Anforderungen, unabhängig von den Samplingeinstellungen.

BodyDiagnosticSettings

Einstellungen für die Textprotokollierung.

Name Typ Beschreibung
bytes

integer

Anzahl der zu protokollierenden Anforderungstextbytes.

DataMasking

Name Typ Beschreibung
headers

DataMaskingEntity[]

Maskierungseinstellungen für Kopfzeilen

queryParams

DataMaskingEntity[]

Maskierungseinstellungen für URL-Abfrageparameter

DataMaskingEntity

Name Typ Beschreibung
mode

DataMaskingMode

Datenmaskierungsmodus.

value

string

Der Name einer zu maskierenden Entität (z. B. ein Name eines Headers oder eines Abfrageparameters).

DataMaskingMode

Datenmaskierungsmodus.

Name Typ Beschreibung
Hide

string

Blendet das Vorhandensein einer Entität aus.

Mask

string

Maskierung des Werts einer Entität.

DiagnosticContract

Diagnosedetails.

Name Typ Beschreibung
id

string

Vollqualifizierte Ressourcen-ID für die Ressource. Beispiel: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

Der Name der Ressource

properties.alwaysLog

AlwaysLog

Gibt an, für welche Art von Nachrichten Samplingeinstellungen nicht gelten sollen.

properties.backend

PipelineDiagnosticSettings

Diagnoseeinstellungen für eingehende/ausgehende HTTP-Nachrichten an das Back-End

properties.frontend

PipelineDiagnosticSettings

Diagnoseeinstellungen für eingehende/ausgehende HTTP-Nachrichten an das Gateway.

properties.httpCorrelationProtocol

HttpCorrelationProtocol

Legt das Korrelationsprotokoll fest, das für Application Insights Diagnose verwendet werden soll.

properties.logClientIp

boolean

Protokollieren Sie clientIP. Der Standardwert ist "false".

properties.loggerId

string

Ressourcen-ID einer Zielprotokollierung.

properties.metrics

boolean

Geben Sie benutzerdefinierte Metriken über eine Ausgabemetrikrichtlinie aus. Gilt nur für Application Insights-Diagnoseeinstellungen.

properties.operationNameFormat

OperationNameFormat

Das Format des Vorgangsnamens für Application Insights-Telemetriedaten. Der Standardwert ist Name.

properties.sampling

SamplingSettings

Samplingeinstellungen für Diagnose.

properties.verbosity

Verbosity

Die Ausführlichkeitsstufe, die auf ablaufverfolgungsrichtlinien ausgegebene Ablaufverfolgungen angewendet wird.

type

string

Der Typ der Ressource. Z.B. "Microsoft.Compute/virtualMachines" oder "Microsoft.Storage/storageAccounts"

ErrorFieldContract

Fehler Feldvertrag.

Name Typ Beschreibung
code

string

Fehlercode auf Eigenschaftsebene.

message

string

Für Menschen lesbare Darstellung eines Fehlers auf Eigenschaftsebene.

target

string

Der Eigenschaftsname.

ErrorResponse

Fehlerantwort.

Name Typ Beschreibung
error.code

string

Der vom Dienst definierte Fehlercode. Dieser Code dient als Unterstatus für den in der Antwort angegebenen HTTP-Fehlercode.

error.details

ErrorFieldContract[]

Die Liste der ungültigen Felder, die in der Anforderung gesendet werden, im Falle eines Validierungsfehlers.

error.message

string

Lesbare Darstellung des Fehlers.

HttpCorrelationProtocol

Legt das Korrelationsprotokoll fest, das für Application Insights Diagnose verwendet werden soll.

Name Typ Beschreibung
Legacy

string

Fügen Sie Request-Id- und Request-Context-Header mit Anforderungskorrelationsdaten ein. Siehe https://github.com/dotnet/corefx/blob/master/src/System.Diagnostics.DiagnosticSource/src/HttpCorrelationProtocol.md.

None

string

Lesen und einfügen Sie keine Korrelationsheader.

W3C

string

Einfügen von Ablaufverfolgungskontextheadern. Siehe https://w3c.github.io/trace-context.

HttpMessageDiagnostic

Diagnoseeinstellungen für HTTP-Nachrichten.

Name Typ Beschreibung
body

BodyDiagnosticSettings

Einstellungen für die Textprotokollierung.

dataMasking

DataMasking

Datenmaskierungseinstellungen.

headers

string[]

Array der zu protokollierenden HTTP-Header.

OperationNameFormat

Das Format des Vorgangsnamens für Application Insights-Telemetriedaten. Der Standardwert ist Name.

Name Typ Beschreibung
Name

string

API_NAME; rev=API_REVISION – OPERATION_NAME

Url

string

HTTP_VERB URL

PipelineDiagnosticSettings

Diagnoseeinstellungen für eingehende/ausgehende HTTP-Nachrichten an das Gateway.

Name Typ Beschreibung
request

HttpMessageDiagnostic

Diagnoseeinstellungen für die Anforderung.

response

HttpMessageDiagnostic

Diagnoseeinstellungen für die Antwort.

SamplingSettings

Samplingeinstellungen für Diagnose.

Name Typ Beschreibung
percentage

number

Rate der Stichprobenentnahme für die Stichprobenentnahme mit festem Satz.

samplingType

SamplingType

Samplingtyp.

SamplingType

Samplingtyp.

Name Typ Beschreibung
fixed

string

Stichprobenentnahme mit fester Rate.

Verbosity

Die Ausführlichkeitsstufe, die auf ablaufverfolgungsrichtlinien ausgegebene Ablaufverfolgungen angewendet wird.

Name Typ Beschreibung
error

string

Nur Ablaufverfolgungen, deren Schweregrad auf "Fehler" festgelegt ist, werden an die Protokollierung gesendet, die an diese Diagnose instance angefügt ist.

information

string

Ablaufverfolgungen, deren Schweregrad auf "Information" und "Fehler" festgelegt ist, werden an die Protokollierung gesendet, die an diese Diagnose instance angefügt ist.

verbose

string

Alle von Ablaufverfolgungsrichtlinien ausgegebenen Ablaufverfolgungen werden an die Protokollierung gesendet, die diesem Diagnose-instance zugeordnet ist.