Compartir a través de


Diagnostic - Create Or Update

Crea un nuevo diagnóstico o actualiza uno existente.

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

Parámetros de identificador URI

Nombre En Requerido Tipo Description
diagnosticId
path True

string

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

Identificador de diagnóstico. Debe ser único en la instancia actual del servicio API Management.

resourceGroupName
path True

string

minLength: 1
maxLength: 90

Nombre del grupo de recursos. El nombre no distingue mayúsculas de minúsculas.

serviceName
path True

string

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

Nombre del servicio API Management.

subscriptionId
path True

string (uuid)

Identificador de la suscripción de destino. El valor debe ser un UUID.

api-version
query True

string

minLength: 1

Versión de la API que se va a usar para esta operación.

Encabezado de la solicitud

Nombre Requerido Tipo Description
If-Match

string

ETag de la entidad. No es necesario al crear una entidad, pero es necesaria al actualizar una entidad.

Cuerpo de la solicitud

Nombre Requerido Tipo Description
properties.loggerId True

string

Identificador de recurso de un registrador de destino.

properties.alwaysLog

AlwaysLog

Especifica para qué tipo de configuración de muestreo de mensajes no se debe aplicar.

properties.backend

PipelineDiagnosticSettings

Configuración de diagnóstico para los mensajes HTTP entrantes o salientes en el back-end

properties.frontend

PipelineDiagnosticSettings

Configuración de diagnóstico para los mensajes HTTP entrantes y salientes a la puerta de enlace.

properties.httpCorrelationProtocol

HttpCorrelationProtocol

Establece el protocolo de correlación que se usará para los diagnósticos de Application Insights.

properties.logClientIp

boolean

Registre clientIP. El valor predeterminado es false.

properties.metrics

boolean

Emita métricas personalizadas a través de la directiva de métricas de emisión. Solo se aplica a la configuración de diagnóstico de Application Insights.

properties.operationNameFormat

OperationNameFormat

El formato del nombre de la operación para los datos de telemetría de Application Insights. El valor predeterminado es Name.

properties.sampling

SamplingSettings

Configuración de muestreo para Diagnóstico.

properties.verbosity

Verbosity

Nivel de detalle aplicado a seguimientos emitidos por directivas de seguimiento.

Respuestas

Nombre Tipo Description
200 OK

DiagnosticContract

Diagnóstico actualizado correctamente

Encabezados

ETag: string

201 Created

DiagnosticContract

El diagnóstico se creó correctamente.

Encabezados

ETag: string

Other Status Codes

ErrorResponse

Respuesta de error que describe por qué se produjo un error en la operación.

Seguridad

azure_auth

Flujo de OAuth2 de Azure Active Directory.

Tipo: oauth2
Flujo: implicit
Dirección URL de autorización: https://login.microsoftonline.com/common/oauth2/authorize

Ámbitos

Nombre Description
user_impersonation suplantar la cuenta de usuario

Ejemplos

ApiManagementCreateDiagnostic

Solicitud de ejemplo

PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights?api-version=2024-05-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
        }
      }
    }
  }
}

Respuesta de muestra

{
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/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/00000000-0000-0000-0000-000000000000/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
        }
      }
    }
  }
}

Definiciones

Nombre Description
AlwaysLog

Especifica para qué tipo de configuración de muestreo de mensajes no se debe aplicar.

BodyDiagnosticSettings

Configuración de registro del cuerpo.

DataMasking
DataMaskingEntity
DataMaskingMode

Modo de enmascaramiento de datos.

DiagnosticContract

Detalles de diagnóstico.

ErrorAdditionalInfo

Información adicional sobre el error de administración de recursos.

ErrorDetail

Detalle del error.

ErrorResponse

Respuesta de error

HttpCorrelationProtocol

Establece el protocolo de correlación que se usará para los diagnósticos de Application Insights.

HttpMessageDiagnostic

Configuración de diagnóstico de mensajes HTTP.

OperationNameFormat

El formato del nombre de la operación para los datos de telemetría de Application Insights. El valor predeterminado es Name.

PipelineDiagnosticSettings

Configuración de diagnóstico para los mensajes HTTP entrantes y salientes a la puerta de enlace.

SamplingSettings

Configuración de muestreo para Diagnóstico.

SamplingType

Tipo de muestreo.

Verbosity

Nivel de detalle aplicado a seguimientos emitidos por directivas de seguimiento.

AlwaysLog

Especifica para qué tipo de configuración de muestreo de mensajes no se debe aplicar.

Valor Description
allErrors

Registre siempre todas las solicitudes erróneas independientemente de la configuración de muestreo.

BodyDiagnosticSettings

Configuración de registro del cuerpo.

Nombre Tipo Description
bytes

integer (int32)

maximum: 8192

Número de bytes del cuerpo de la solicitud que se van a registrar.

DataMasking

Nombre Tipo Description
headers

DataMaskingEntity[]

Configuración de enmascaramiento de encabezados

queryParams

DataMaskingEntity[]

Configuración de enmascaramiento para parámetros de consulta url

DataMaskingEntity

Nombre Tipo Description
mode

DataMaskingMode

Modo de enmascaramiento de datos.

value

string

Nombre de una entidad que se va a enmascarar (por ejemplo, un nombre de un encabezado o un parámetro de consulta).

DataMaskingMode

Modo de enmascaramiento de datos.

Valor Description
Hide

Oculte la presencia de una entidad.

Mask

Enmascara el valor de una entidad.

DiagnosticContract

Detalles de diagnóstico.

Nombre Tipo Description
id

string

Identificador de recurso completo para el recurso. Por ejemplo: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

Nombre del recurso

properties.alwaysLog

AlwaysLog

Especifica para qué tipo de configuración de muestreo de mensajes no se debe aplicar.

properties.backend

PipelineDiagnosticSettings

Configuración de diagnóstico para los mensajes HTTP entrantes o salientes en el back-end

properties.frontend

PipelineDiagnosticSettings

Configuración de diagnóstico para los mensajes HTTP entrantes y salientes a la puerta de enlace.

properties.httpCorrelationProtocol

HttpCorrelationProtocol

Establece el protocolo de correlación que se usará para los diagnósticos de Application Insights.

properties.logClientIp

boolean

Registre clientIP. El valor predeterminado es false.

properties.loggerId

string

Identificador de recurso de un registrador de destino.

properties.metrics

boolean

Emita métricas personalizadas a través de la directiva de métricas de emisión. Solo se aplica a la configuración de diagnóstico de Application Insights.

properties.operationNameFormat

OperationNameFormat

El formato del nombre de la operación para los datos de telemetría de Application Insights. El valor predeterminado es Name.

properties.sampling

SamplingSettings

Configuración de muestreo para Diagnóstico.

properties.verbosity

Verbosity

Nivel de detalle aplicado a seguimientos emitidos por directivas de seguimiento.

type

string

Tipo del recurso. Por ejemplo, "Microsoft.Compute/virtualMachines" o "Microsoft.Storage/storageAccounts"

ErrorAdditionalInfo

Información adicional sobre el error de administración de recursos.

Nombre Tipo Description
info

object

Información adicional.

type

string

Tipo de información adicional.

ErrorDetail

Detalle del error.

Nombre Tipo Description
additionalInfo

ErrorAdditionalInfo[]

Información adicional del error.

code

string

Código de error.

details

ErrorDetail[]

Detalles del error.

message

string

Mensaje de error.

target

string

Destino del error.

ErrorResponse

Respuesta de error

Nombre Tipo Description
error

ErrorDetail

Objeto de error.

HttpCorrelationProtocol

Establece el protocolo de correlación que se usará para los diagnósticos de Application Insights.

Valor Description
Legacy

Inserte Request-Id y Request-Context encabezados con datos de correlación de solicitudes. Consulte https://github.com/dotnet/corefx/blob/master/src/System.Diagnostics.DiagnosticSource/src/HttpCorrelationProtocol.md.

None

No lea e inserte encabezados de correlación.

W3C

Inserte encabezados de contexto de seguimiento. Consulte https://w3c.github.io/trace-context.

HttpMessageDiagnostic

Configuración de diagnóstico de mensajes HTTP.

Nombre Tipo Description
body

BodyDiagnosticSettings

Configuración de registro del cuerpo.

dataMasking

DataMasking

Configuración de enmascaramiento de datos.

headers

string[]

Matriz de encabezados HTTP que se van a registrar.

OperationNameFormat

El formato del nombre de la operación para los datos de telemetría de Application Insights. El valor predeterminado es Name.

Valor Description
Name

API_NAME; rev=API_REVISION: OPERATION_NAME

Url

HTTP_VERB URL

PipelineDiagnosticSettings

Configuración de diagnóstico para los mensajes HTTP entrantes y salientes a la puerta de enlace.

Nombre Tipo Description
request

HttpMessageDiagnostic

Configuración de diagnóstico para la solicitud.

response

HttpMessageDiagnostic

Configuración de diagnóstico para la respuesta.

SamplingSettings

Configuración de muestreo para Diagnóstico.

Nombre Tipo Description
percentage

number (double)

minimum: 0
maximum: 100

Frecuencia de muestreo para el muestreo de frecuencia fija.

samplingType

SamplingType

Tipo de muestreo.

SamplingType

Tipo de muestreo.

Valor Description
fixed

Muestreo de frecuencia fija.

Verbosity

Nivel de detalle aplicado a seguimientos emitidos por directivas de seguimiento.

Valor Description
error

Solo los seguimientos con "gravedad" establecido en "error" se enviarán al registrador adjunto a esta instancia de diagnóstico.

information

Los seguimientos con "gravedad" establecido en "information" y "error" se enviarán al registrador adjunto a esta instancia de diagnóstico.

verbose

Todos los seguimientos emitidos por las directivas de seguimiento se enviarán al registrador adjunto a esta instancia de diagnóstico.