Logga till händelsehubb

GÄLLER FÖR: Alla API Management-nivåer

Principen log-to-eventhub skickar meddelanden i det angivna formatet till en händelsehubb som definierats av en Logger-entitet. Som namnet antyder används principen för att spara vald information om begäran eller svarskontext för analys online eller offline.

Kommentar

En stegvis guide om hur du konfigurerar en händelsehubb och loggningshändelser finns i Logga API Management-händelser med Azure Event Hubs.

Kommentar

Ange principens element och underordnade element i den ordning som anges i principbeskrivningen. Läs mer om hur du anger eller redigerar API Management-principer.

Principuttryck

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

Attribut

Attribut beskrivning Obligatoriskt Standardvärde
logger-id ID:t för loggaren som registrerats med DIN API Management-tjänst. Principuttryck tillåts inte. Ja Ej tillämpligt
partitions-ID Anger indexet för partitionen där meddelanden skickas. Principuttryck tillåts inte. Valfritt. Använd inte om partition-key används. Ej tillämpligt
partitionsnyckel Anger det värde som används för partitionstilldelning när meddelanden skickas. Principuttryck tillåts. Valfritt. Använd inte om partition-id används. Ej tillämpligt

Användning

Användningsanteckningar

  • Principen påverkas inte av Application Insights-sampling. Alla anrop av principen loggas.
  • Den maximala meddelandestorlek som stöds som kan skickas till en händelsehubb från den här principen är 200 kilobyte (KB). Ett större meddelande trunkeras automatiskt till 200 KB innan det överförs till en händelsehubb.

Exempel

Valfri sträng kan användas som det värde som ska loggas i Event Hubs. I det här exemplet loggas datum och tid, namn på distributionstjänst, begärande-ID, IP-adress och åtgärdsnamn för alla inkommande anrop till händelsehubben Logger som registrerats med contoso-logger ID:t.

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

Mer information om hur du arbetar med principer finns i: