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

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>

Para más información sobre el trabajo con directivas, vea: