我正在研究捕获和存储系统事件的技术(以期将来可能实现一些“事件溯源”系统)。
我对 Azure 事件中心很感兴趣,因为我喜欢在 Azure Functions & Logic Apps 中构建处理服务并让它们由引发的事件触发。
我创建了客户事件中心并启用了“捕获”,因此我的事件和有效负载存储在 Azure Blob 存储(.avro 文件)中
我想知道如何,或者甚至是否能够查询事件,所以说我有一个流捕获我所有的“客户”交互,例如 Register/Update_Contact_Address 等.....并且我想搜索所有特定客户 ID 的事件,这是如何实现的?我见过流分析工作,但这些似乎是用于“实时数据分析”,而不是我能够使用来自应用程序的参数进行查询,比如我的客户 Guid。
我希望创建一个小型管理应用程序,允许我选择一个客户,并收集为该 ID 捕获的所有客户事件?
以下是我存储的示例事件(从 .avro 文件中提取)
{
"EventId": "51e3610f-8520-406d-8736-45f382bc5110",
"EventName": "ReceiveCustomerReview",
"ReceivedAt": "0001-01-01T00:00:00",
"Client": 1,
"customerGuid": "x45y57x2-5dcc-45c4-86c5-78942db363w1"
"Payload": {
"stars": 5,
"comment": "OMG..... Beautiful product",
"ClientId": 1
}
}