Интеграция функций Azure с концентратором событий

Я создал функцию Azure из шаблона триггера EventHub. Но я застрял с двумя проблемами:

а) Как указать группу потребителей, кроме группы по умолчанию?

б) Есть ли способ получить весь объект EventData, а не только строку сообщения?


person unconnected    schedule 27.05.2016    source источник


Ответы (1)


Обновление: теперь на портале также можно указывать группу потребителей (проблема, указанная ниже, была исправлена).

Что касается вашего первого вопроса, у нас есть отслеживание проблем, и мы скоро займемся этим (проблема репо здесь).

Что касается вашего второго вопроса, я предполагаю, что вы начинаете с нашего шаблона C #, который использует строку, но вы можете изменить это на EventData (где имя параметра "evt" совпадает с именем, которое вы выбрали в привязке):

#r "Microsoft.ServiceBus"

using System;
using Microsoft.ServiceBus.Messaging;

public static void Run(EventData evt, TraceWriter log)
{
    var id = evt.Properties["id"];
    log.Info($"C# Event Hub trigger function processed event: {id}");
}

Дополнительную информацию о возможных привязках см. На странице вики EventHub здесь. Вы также можете выполнить привязку многими другими способами, например, своим собственным классом POCO, массивом событий и т. Д.

person mathewc    schedule 27.05.2016
comment
Большое спасибо! Но подпись должна быть следующей, иначе компиляция не удастся. public static void Run (EventData myEventHubMessage, журнал TraceWriter) - person unconnected; 27.05.2016
comment
Ну, имя фактического параметра меняется - это зависит от вас, когда вы устанавливаете свою функцию. Моя функция использовала evt в качестве имени параметра. Я поясню свой пример выше. - person mathewc; 27.05.2016