在 Azure 数据工厂中完成活动后,如何向 Azure 服务总线发送消息

Posted

技术标签:

【中文标题】在 Azure 数据工厂中完成活动后,如何向 Azure 服务总线发送消息【英文标题】:How do i send messages to Azure Service Bus after completion of activity in Azure data Factory 【发布时间】:2019-01-30 13:40:56 【问题描述】:

在 Azure 数据工厂管道中的活动完成后,我正尝试通过 REST API 向 azure 服务总线发送消息。但是如何生成访问令牌以在 azure 数据工厂内发送消息。

Azure 数据工厂只有网络活动,我可以通过它调用休息端点,有没有可能的解决方案。

【问题讨论】:

【参考方案1】:

有一种方法可以使用 ADF Web 活动来直接使用 ADF 的托管身份与服务总线 REST api 交互。

它需要为 ADF 的托管身份授予对服务总线命名空间的相关权限(例如,通过分配 Azure Service Bus Data Sender 角色)。您可以在网络活动中使用managed identity authentication 选项并将资源值设置为https://servicebus.azure.net,而不是生成访问令牌。

有关工作示例,请查看我的blog post on sending messages to service bus from ADF。

【讨论】:

【参考方案2】:

我建议您可以使用 Azure Httptrigger 函数。

您可以使用 Azure httptigger 函数实现发送消息。并在 Azure 数据工厂中调用 Http 触发函数。

有关 Azure Httptrigger 功能的更多信息,请参阅此tutorial。

然后我们可以使用 Web activity 从数据工厂管道调用 Azure 函数端点。

【讨论】:

谢谢,这种方式可行,但我想知道是否有不涉及天蓝色功能的解决方案。只使用普通的网络请求 根据我的经验,我不知道目前只使用普通的网络请求。但我认为 Azure 功能很容易做到这一点。

以上是关于在 Azure 数据工厂中完成活动后,如何向 Azure 服务总线发送消息的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Azure 数据工厂的 Web 活动中为 POST 请求传递正文中的内容

如何在 Azure 数据工厂中为与外键相关的表创建管道并执行复制活动?

如何更改 Azure 数据工厂中管道活动的集成运行时

在 Azure 数据工厂中使用复制数据活动将 xml 解析为 json 时如何删除转义字符?

在 Azure 数据工厂中成功完成数据流后,为啥没有将数据传输到我的接收器表?

如何使用 Azure 数据工厂中的每个活动合并文件