2015-11-19 105 views
2

我使用這個RedDog工具生成了SAS簽名,並使用Events Hub API refs成功向Event Hub發送了一條消息。我知道這是成功的,因爲我從端點獲得了201創建響應。Azure Event Hub消息存儲在哪裏?

這個微小的成功帶來了,我一直沒能找到一個問題的答案:

我去湛藍的門戶網站,都看不到我在任何地方創建的消息。進一步閱讀顯示,我需要創建一個存儲帳戶;我偶然發現了一些C#示例(EventProcessorHost),它需要存儲帳戶的信用等。

問題是,有什麼API可以用來保存數據嗎?我不想使用C#工具。

如果我的方法錯誤,請糾正我的錯誤,但我的目標是能夠將遙測數據發佈到EventHub上,並堅持數據並對其執行一些分析操作。遙測數據應該可以在Azure上查看。

回答

1

您無法直接訪問用於EventHub消息的臨時存儲,但可以編寫一個消費者,該消費者持續從EventHub讀取消息並將消息持久保存到Azure表或Azure Blob。

您會發現自動持久保留消息的方式最接近(與Amazon Kinesis Firehose與Amazon Kinesis的EventHubs基本相同),將使用Azure Streaming Analytics配置爲將輸出寫入Azure Blob或Azure Table 。 This example顯示瞭如何設置將數據傳遞並存儲到SQL中的Streaming Analytics作業,但您可以在其中選擇用戶可以選擇的選項,如Azure Table。或者您可以從the output API瞭解選項。

Choose storage output

當然,你應該知道的周圍系列化的要求,導致this question

+0

好的,謝謝。這真的很有幫助!我按照示例中的說明進行操作,使其適合我的用例。最後一個問題是,EventProcessorHost與我剛剛做的事情有什麼不同 - 發送事件,堅持它們,從數據庫讀取持久化值到我的應用程序中? src代碼不可用,所以我不能做很多挖掘。 –

+1

EventProcessorHost是一個工具,可以消除跨越不同盒子處理多個分區的難題。 「消費」的含義因用例而異。我們有一個將事件保存到AzureTable的消費者,以及計算各種指標並採取各種其他操作的消費者(具有相同數據)。基本上它允許其他C#代碼訪問消息並執行任何操作。 – cacsar