首页 > 解决方案 > 天蓝色的 eventHub 绑定(Java)是否支持 @EventHubOutput 的 partitionKey?

问题描述

我可以找到支持 partitionKey 的 eventthub 输出绑定的文档或示例。下面的链接说它是触发器元数据的一个选项,但是没有 java 示例。

https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-event-hubs#trigger---event-metadata

我是否遗漏了本文档中的任何内容或仍然不受支持?

提前致谢

标签: javaazure-eventhub

解决方案


如果你想要一个关于如何使用触发器元数据的例子,你可以参考下面的代码,或者你可以去github检查代码。下面是我的测试代码。

public class Eventhubtest {
    /**
     * This function will be invoked when an event is received from Event Hub.
     */
    @FunctionName("Eventhubtest")
    public void run(
        @EventHubTrigger(name = "message", eventHubName = "myevent", connection = "EventHubConnection", cardinality = Cardinality.MANY)String message,
        @BindingName("SystemPropertiesArray") SystemProperty[] systemPropertiesArray,
        final ExecutionContext context) {
        context.getLogger().info("Java Event Hub trigger function executed."+message);
        context.getLogger().info("SystemProperties for message[0]: EnqueuedTimeUtc=" + systemPropertiesArray[0].EnqueuedTimeUtc +" Offset=" +systemPropertiesArray[0].Offset+" PartitionKey="+ systemPropertiesArray[0].PartitionKey);



    }
    public static class SystemProperty {
        public String SequenceNumber;
        public String Offset;
        public String PartitionKey;
        public String EnqueuedTimeUtc;
    }
}

这是结果。你可以PartitionKey在图片中找到它。

在此处输入图像描述


推荐阅读