![](/img/trans.png)
[英]How to log messages to Azure Event Hub from Azure API Management Service
[英]Simplest way to log all messages from an Azure Event Hub
我正在使用一個輸出到事件中心的服務。
我們希望存儲該輸出,每天由Apache Spark上運行的批處理作業讀取一次。 基本上我們認為,只需將所有消息轉儲到blob即可。
從事件中心捕獲消息到Blob存儲的最簡單方法是什么?
我們的第一個想法是Streaming Analytics工作,但它需要解析原始消息(CSV / JSON / Avro),我們當前的格式都不是。
更新我們通過更改消息格式解決了這個問題。 我還是想知道是否有任何影響blob存儲消息的低影響方式。 在Streaming Analytics到達之前,EventHub是否有解決方案?
您可以編寫自己的工作進程來讀取EventHub上的消息並將它們存儲到blob存儲中。 您不需要實時執行此操作,因為EH上的消息將保留設置的保留天數。 讀取EH的客戶端負責通過跟蹤EH消息partitionid和offset來管理已處理的消息。 有一個C#庫使這非常容易,並且可以很好地擴展: https : //azure.microsoft.com/en-us/documentation/articles/event-hubs-csharp-ephcs-getstarted/
您可以使用event-hubs-capture捕獲到blob。
Azure現在具有此內置: Event Hubs Archive (預覽版)
您還可以通過從事件中心觸發器觸發的Azure功能(無服務器代碼)執行此操作。
根據您的要求,如果您需要一種它沒有的功能,例如保存為GZIP,或者寫入更自定義的blob虛擬目錄結構,這可以比事件捕獲功能更好地工作。
https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-event-hubs#trigger-usage
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.