Registro en el centro de eventos
SE APLICA A: todos los niveles de API Management
La directiva log-to-eventhub
envía mensajes en el formato especificado a un centro de eventos definido por una entidad de registrador. Como su nombre indica, la directiva se usa para guardar información de contexto de respuesta o solicitud que se ha seleccionado para su análisis en línea o sin conexión.
Nota
Para obtener una guía paso a paso acerca de cómo configurar un centro de eventos y eventos de registro, consulte Cómo registrar eventos de API Management con Azure Event Hubs.
Nota:
Establezca los elementos de la directiva y los elementos secundarios en el orden proporcionado en la instrucción de directiva. Obtenga más información sobre el establecimiento o modificación de directivas de API Management.
Instrucción de la directiva
<log-to-eventhub logger-id="id of the logger entity" partition-id="index of the partition where messages are sent" partition-key="value used for partition assignment">
Expression returning a string to be logged
</log-to-eventhub>
Atributos
Atributo | Descripción | Necesario | Valor predeterminado |
---|---|---|---|
logger-id | Id. del registrador registrado con el servicio API Management. No se permiten expresiones de directiva. | Sí | N/D |
partition-id | Especifica el índice de la partición desde donde se envían los mensajes. No se permiten expresiones de directiva. | Opcional. No lo use si se utiliza partition-key . |
N/D |
partition-key | Especifica el valor utilizado para la asignación de partición cuando se envían mensajes. Se permiten expresiones de directiva. | Opcional. No lo use si se utiliza partition-id . |
N/D |
Uso
- Secciones de directiva: entrante, saliente, back-end, on-error
- Ámbitos de la directiva: global, producto, API y operación
- Puertas de enlace: clásico, v2, consumo y autohospedado
Notas de uso
- La directiva no se ve afectada por el muestreo de Application Insights. Todas las invocaciones de la directiva se registrarán.
- El tamaño máximo admitido para los mensajes que se pueden enviar a un centro de eventos desde esta directiva es de 200 kilobytes (KB). Un mensaje mayor se truncará automáticamente a 200 KB antes de transferirlo a un centro de eventos.
Ejemplo
Puede utilizar cualquier cadena como valor que se registrará en Event Hubs. En este ejemplo, la fecha y la hora, el nombre del servicio de implementación, el identificador de solicitud, la dirección IP y el nombre de la operación de todas las llamadas entrantes se registran en el registrador del centro de eventos con el identificador contoso-logger
.
<policies>
<inbound>
<log-to-eventhub logger-id ='contoso-logger'>
@( string.Join(",", DateTime.UtcNow, context.Deployment.ServiceName, context.RequestId, context.Request.IpAddress, context.Operation.Name) )
</log-to-eventhub>
</inbound>
<outbound>
</outbound>
</policies>
Directivas relacionadas
Contenido relacionado
Para más información sobre el trabajo con directivas, vea:
- Tutorial: Transformación y protección de una API
- Referencia de directivas para una lista completa de instrucciones de directivas y su configuración
- Expresiones de directiva
- Establecimiento o edición de directivas
- Reutilización de configuraciones de directivas
- Repositorio de fragmentos de código de directiva
- kit de herramientas de directivas de Azure API Management
- Creación de directivas mediante Microsoft Copilot en Azure