使用EventHubTrigger配置自定义ConsumerGroup

时间:2017-03-22 10:20:47

标签: azure azure-webjobs azure-webjobssdk

我想将EventHubTrigger与自定义ConsumerGroup一起使用。

使用默认的ConsumerGroup时,代码如下所示:

public static async Task ProcessQueueMessage([EventHubTrigger("%EventHubName%")] TelemetryEvent[] messages, TextWriter log)
        {}

EventHubTriggerAttribute类具有可以设置的ConsumerGroup属性。但是如何?

[AttributeUsage(AttributeTargets.Parameter)]
public sealed class EventHubTriggerAttribute : Attribute
{
    //
    // Summary:
    //     Create an instance of this attribute.
    //
    // Parameters:
    //   eventHubName:
    //     Event hub to listen on for messages.
    public EventHubTriggerAttribute(string eventHubName);

    //
    // Summary:
    //     Name of the event hub.
    public string EventHubName { get; }
    //
    // Summary:
    //     Optional Name of the consumer group. If missing, then use the default name, "$Default"
    public string ConsumerGroup { get; set; }
}

1 个答案:

答案 0 :(得分:1)

据我所知,如果要在EventHubTrigger中设置ConsumerGroup属性,可以在EventHubTrigger方法中将其设置为参数。

更多细节,您可以参考以下代码:

    public static async Task ProcessQueueMessage([EventHubTrigger("Yourhubname", ConsumerGroup = "groupname")] string[] messages, TextWriter log)
    {
       ...
    }