Condividi tramite


Api Diagnostic - Update

Aggiorna i dettagli della diagnostica per un'API specificata dal relativo identificatore.

PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics/{diagnosticId}?api-version=2024-05-01

Parametri dell'URI

Nome In Necessario Tipo Descrizione
apiId
path True

string

minLength: 1
maxLength: 80

Identificatore API. Deve essere univoco nell'istanza corrente del servizio Gestione API.

diagnosticId
path True

string

minLength: 1
maxLength: 80
pattern: ^[^*#&+:<>?]+$

Identificatore di diagnostica. Deve essere univoco nell'istanza corrente del servizio Gestione API.

resourceGroupName
path True

string

minLength: 1
maxLength: 90

Nome del gruppo di risorse. Il nome non fa distinzione tra maiuscole e minuscole.

serviceName
path True

string

minLength: 1
maxLength: 50
pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

Nome del servizio Gestione API.

subscriptionId
path True

string (uuid)

ID della sottoscrizione di destinazione. Il valore deve essere un UUID.

api-version
query True

string

minLength: 1

Versione dell'API da usare per questa operazione.

Intestazione della richiesta

Nome Necessario Tipo Descrizione
If-Match True

string

ETag dell'entità. ETag deve corrispondere allo stato corrente dell'entità dalla risposta dell'intestazione della richiesta GET oppure deve essere * per l'aggiornamento incondizionato.

Corpo della richiesta

Nome Necessario Tipo Descrizione
properties.loggerId True

string

ID risorsa di un logger di destinazione.

properties.alwaysLog

AlwaysLog

Specifica il tipo di impostazioni di campionamento dei messaggi che non devono essere applicate.

properties.backend

PipelineDiagnosticSettings

Impostazioni di diagnostica per i messaggi HTTP in ingresso/in uscita nel back-end

properties.frontend

PipelineDiagnosticSettings

Impostazioni di diagnostica per i messaggi HTTP in ingresso/in uscita nel gateway.

properties.httpCorrelationProtocol

HttpCorrelationProtocol

Imposta il protocollo di correlazione da usare per la diagnostica di Application Insights.

properties.logClientIp

boolean

Registrare ClientIP. Il valore predefinito è false.

properties.metrics

boolean

Creare metriche personalizzate tramite criteri di metrica di emissione. Applicabile solo alle impostazioni di diagnostica di Application Insights.

properties.operationNameFormat

OperationNameFormat

Formato del nome dell'operazione per le telemetrie di Application Insights. Il valore predefinito è Name.

properties.sampling

SamplingSettings

Impostazioni di campionamento per Diagnostica.

properties.verbosity

Verbosity

Livello di dettaglio applicato alle tracce generate dai criteri di traccia.

Risposte

Nome Tipo Descrizione
200 OK

DiagnosticContract

La diagnostica è stata aggiornata correttamente.

Intestazioni

ETag: string

Other Status Codes

ErrorResponse

Risposta di errore che descrive il motivo per cui l'operazione non è riuscita.

Sicurezza

azure_auth

Flusso OAuth2 di Azure Active Directory.

Tipo: oauth2
Flow: implicit
URL di autorizzazione: https://login.microsoftonline.com/common/oauth2/authorize

Ambiti

Nome Descrizione
user_impersonation rappresentare l'account utente

Esempio

ApiManagementUpdateApiDiagnostic

Esempio di richiesta

PATCH https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api/diagnostics/applicationinsights?api-version=2024-05-01


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

Risposta di esempio

{
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api/diagnostics/applicationinsights",
  "type": "Microsoft.ApiManagement/service/apis/diagnostics",
  "name": "applicationinsights",
  "properties": {
    "alwaysLog": "allErrors",
    "httpCorrelationProtocol": "Legacy",
    "logClientIp": true,
    "loggerId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/aisamplingtest",
    "sampling": {
      "samplingType": "fixed",
      "percentage": 100
    },
    "frontend": {
      "request": {
        "headers": [],
        "body": {
          "bytes": 100
        }
      },
      "response": {
        "headers": [],
        "body": {
          "bytes": 100
        }
      }
    },
    "backend": {
      "request": {
        "headers": [],
        "body": {
          "bytes": 100
        }
      },
      "response": {
        "headers": [],
        "body": {
          "bytes": 100
        }
      }
    }
  }
}

Definizioni

Nome Descrizione
AlwaysLog

Specifica il tipo di impostazioni di campionamento dei messaggi che non devono essere applicate.

BodyDiagnosticSettings

Impostazioni di registrazione del corpo.

DataMasking
DataMaskingEntity
DataMaskingMode

Modalità maschera dati.

DiagnosticContract

Dettagli di diagnostica.

ErrorAdditionalInfo

Informazioni aggiuntive sull'errore di gestione delle risorse.

ErrorDetail

Dettagli dell'errore.

ErrorResponse

Risposta di errore

HttpCorrelationProtocol

Imposta il protocollo di correlazione da usare per la diagnostica di Application Insights.

HttpMessageDiagnostic

Impostazioni di diagnostica dei messaggi HTTP.

OperationNameFormat

Formato del nome dell'operazione per le telemetrie di Application Insights. Il valore predefinito è Name.

PipelineDiagnosticSettings

Impostazioni di diagnostica per i messaggi HTTP in ingresso/in uscita nel gateway.

SamplingSettings

Impostazioni di campionamento per Diagnostica.

SamplingType

Tipo di campionamento.

Verbosity

Livello di dettaglio applicato alle tracce generate dai criteri di traccia.

AlwaysLog

Specifica il tipo di impostazioni di campionamento dei messaggi che non devono essere applicate.

Valore Descrizione
allErrors

Registra sempre tutte le richieste errate indipendentemente dalle impostazioni di campionamento.

BodyDiagnosticSettings

Impostazioni di registrazione del corpo.

Nome Tipo Descrizione
bytes

integer (int32)

maximum: 8192

Numero di byte del corpo della richiesta da registrare.

DataMasking

Nome Tipo Descrizione
headers

DataMaskingEntity[]

Impostazioni di maschera per le intestazioni

queryParams

DataMaskingEntity[]

Impostazioni di maschera per i parametri di query url

DataMaskingEntity

Nome Tipo Descrizione
mode

DataMaskingMode

Modalità maschera dati.

value

string

Nome di un'entità da mascherare, ad esempio un nome di un'intestazione o di un parametro di query.

DataMaskingMode

Modalità maschera dati.

Valore Descrizione
Hide

Nascondere la presenza di un'entità.

Mask

Mascherare il valore di un'entità.

DiagnosticContract

Dettagli di diagnostica.

Nome Tipo Descrizione
id

string

ID risorsa completo per la risorsa. Ad esempio - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

Nome della risorsa

properties.alwaysLog

AlwaysLog

Specifica il tipo di impostazioni di campionamento dei messaggi che non devono essere applicate.

properties.backend

PipelineDiagnosticSettings

Impostazioni di diagnostica per i messaggi HTTP in ingresso/in uscita nel back-end

properties.frontend

PipelineDiagnosticSettings

Impostazioni di diagnostica per i messaggi HTTP in ingresso/in uscita nel gateway.

properties.httpCorrelationProtocol

HttpCorrelationProtocol

Imposta il protocollo di correlazione da usare per la diagnostica di Application Insights.

properties.logClientIp

boolean

Registrare ClientIP. Il valore predefinito è false.

properties.loggerId

string

ID risorsa di un logger di destinazione.

properties.metrics

boolean

Creare metriche personalizzate tramite criteri di metrica di emissione. Applicabile solo alle impostazioni di diagnostica di Application Insights.

properties.operationNameFormat

OperationNameFormat

Formato del nome dell'operazione per le telemetrie di Application Insights. Il valore predefinito è Name.

properties.sampling

SamplingSettings

Impostazioni di campionamento per Diagnostica.

properties.verbosity

Verbosity

Livello di dettaglio applicato alle tracce generate dai criteri di traccia.

type

string

Tipo della risorsa. Ad esempio, "Microsoft.Compute/virtualMachines" o "Microsoft.Storage/storageAccounts"

ErrorAdditionalInfo

Informazioni aggiuntive sull'errore di gestione delle risorse.

Nome Tipo Descrizione
info

object

Informazioni aggiuntive.

type

string

Tipo di informazioni aggiuntive.

ErrorDetail

Dettagli dell'errore.

Nome Tipo Descrizione
additionalInfo

ErrorAdditionalInfo[]

Informazioni aggiuntive sull'errore.

code

string

Codice di errore.

details

ErrorDetail[]

Dettagli dell'errore.

message

string

Messaggio di errore.

target

string

Destinazione dell'errore.

ErrorResponse

Risposta di errore

Nome Tipo Descrizione
error

ErrorDetail

Oggetto error.

HttpCorrelationProtocol

Imposta il protocollo di correlazione da usare per la diagnostica di Application Insights.

Valore Descrizione
Legacy

Inserire Request-Id e Request-Context intestazioni con dati di correlazione della richiesta. Vedere https://github.com/dotnet/corefx/blob/master/src/System.Diagnostics.DiagnosticSource/src/HttpCorrelationProtocol.md.

None

Non leggere e inserire intestazioni di correlazione.

W3C

Inserire le intestazioni del contesto di traccia. Vedere https://w3c.github.io/trace-context.

HttpMessageDiagnostic

Impostazioni di diagnostica dei messaggi HTTP.

Nome Tipo Descrizione
body

BodyDiagnosticSettings

Impostazioni di registrazione del corpo.

dataMasking

DataMasking

Impostazioni di maschera dati.

headers

string[]

Matrice di intestazioni HTTP da registrare.

OperationNameFormat

Formato del nome dell'operazione per le telemetrie di Application Insights. Il valore predefinito è Name.

Valore Descrizione
Name

API_NAME; rev=API_REVISION - OPERATION_NAME

Url

HTTP_VERB URL

PipelineDiagnosticSettings

Impostazioni di diagnostica per i messaggi HTTP in ingresso/in uscita nel gateway.

Nome Tipo Descrizione
request

HttpMessageDiagnostic

Impostazioni di diagnostica per la richiesta.

response

HttpMessageDiagnostic

Impostazioni di diagnostica per la risposta.

SamplingSettings

Impostazioni di campionamento per Diagnostica.

Nome Tipo Descrizione
percentage

number (double)

minimum: 0
maximum: 100

Frequenza di campionamento per il campionamento a frequenza fissa.

samplingType

SamplingType

Tipo di campionamento.

SamplingType

Tipo di campionamento.

Valore Descrizione
fixed

Campionamento a frequenza fissa.

Verbosity

Livello di dettaglio applicato alle tracce generate dai criteri di traccia.

Valore Descrizione
error

Solo le tracce con "gravità" impostate su "error" verranno inviate al logger collegato a questa istanza di diagnostica.

information

Le tracce con 'gravità' impostate su 'information' e 'error' verranno inviate al logger collegato a questa istanza di diagnostica.

verbose

Tutte le tracce generate dai criteri di traccia verranno inviate al logger collegato a questa istanza di diagnostica.