如果要将自己的应用程序与事件流连接,可以添加自定义终结点或自定义应用作为源。 然后,您可以使用在自定义端点或自定义应用程序上公开的连接端点,从您自己的应用程序将实时事件发送到事件流。 此外,在 Apache Kafka 协议可作为自定义终结点或自定义应用的选项的情况下,你可以通过 Apache Kafka 协议发送实时事件。
本文介绍了如何将自定义终结点源或自定义应用源添加到 Microsoft Fabric 事件流中的事件流。
注意
现在,创建事件流时,将会默认启用增强功能。 如果你有使用标准功能创建的事件流,则这些事件流将继续正常工作。 你仍然可以像往常一样编辑和使用它们。 建议创建新的事件流来替换标准事件流,以便可以利用增强型事件流的其他功能和优势。
先决条件
在开始之前,请确保有权访问事件流所在的工作区。 工作区必须处于“Fabric 容量”或“试用”模式。
- 编辑事件流以添加自定义终结点源需要贡献者或更高权限。
- 如果要使用 Entra ID 身份验证 连接应用程序,则需要 成员 或更高权限。
如果使用 Entra ID 身份验证,还需要确保自定义终结点的托管标识具有所需的权限。 为此,请在 管理门户中配置必要的设置:
选择右上角的 “设置” (齿轮图标)。
在“治理和见解”部分下选择“管理门户”。
激活以下租户设置,向服务主体授予对 Fabric API 的访问权限,以创建工作区、连接或部署管道:
- 在“租户设置”页上的“开发人员设置”部分中,展开“服务主体可以使用Fabric API”选项。
- 切换到 “已启用”。
- 应用于 整个组织。
- 选择 应用。
启用此选项以访问所有其他 API(默认情况下为新租户启用):
- 仍然在“租户设置”页上展开“允许服务主体创建和使用配置文件”选项。
- 切换到 “已启用”。
- 应用于 整个组织。
- 选择 应用。
注意
使用以下类型时,事件流最多可以支持 11 个组合的源和目标:
- 源:Azure 事件中心、IoT 中心和自定义终结点。
- 目标:使用直接引入的自定义终结点和 Eventhouse。
上述列表中未包含的任何源或目标,且未追加到默认流的目标不会计入此限制。
将自定义终结点数据添加为源
要添加自定义终结点源,请在“入门”页面上,选择“使用自定义终结点”。 或者,如果已有已发布的事件流,并且想要将自定义终结点数据添加为源,请切换到“编辑”模式。 在功能区上,选择“添加源”>“自定义终结点”。
在“自定义终结点”对话框中,在“源名称”下,输入自定义源的名称,然后选择“添加”。
创建自定义终结点源后,它会在编辑模式下被添加到画布上的事件流中。 若要实现新添加的自定义应用源数据,请选择“发布”。
注意
使用以下类型时,事件流最多可以支持 11 个组合的源和目标:
- 源:Azure 事件中心、IoT 中心和自定义终结点。
- 目标:使用直接引入的自定义终结点和 Eventhouse。
上述列表中未包含的任何源或目标,且未追加到默认流的目标不会计入此限制。
在“详细信息”窗格上获取终结点详细信息
创建自定义终结点源后,其数据可用于实时视图中可视化。
“详细信息”窗格有三个协议选项卡:“事件中心”、“AMQP”和“Kafka”。 每个协议选项卡有三个页面:“基本信息”、“密钥”和“SAS 密钥身份验证”。 这些页面提供终结点详细信息以及相应的连接协议。
“基本信息”页显示自定义终结点的名称、类型和状态。
“SAS 密钥身份验证页面”提供有关连接密钥的信息,以及指向示例代码的链接,其中嵌入了可用于传输事件到您的事件流的相应密钥。 “密钥”页上的信息因协议而异。
事件中心
“事件中心”选项卡上的“SAS 密钥身份验证”页包含与事件中心的连接字符串相关的信息。 该信息包括“事件中心名称”、“共享访问密钥名称”、“主密钥”、“辅助密钥”、“连接字符串 - 主密钥”、“连接字符串 - 辅助密钥”。
事件中心格式是连接字符串的默认设置,它与 Azure 事件中心 SDK 兼容。 使用此格式,你可以通过事件枢纽协议连接到事件流。
以下示例显示了事件中心格式的连接字符串的呈现效果:
Endpoint=sb://eventstream-xxxxxxxx.servicebus.windows.net/;SharedAccessKeyName=key_xxxxxxxx;SharedAccessKey=xxxxxxxx;EntityPath=es_xxxxxxx
如果你选择“显示示例代码”按钮,则会看到现成可用的 Java 代码,其中包含有关事件中心内的连接密钥的必需信息。 将其复制并粘贴到应用程序中供使用。
高级消息队列协议 (AMQP)
AMQP 格式与 AMQP 1.0 协议兼容,后者是一种标准消息传递协议,支持各种平台和语言之间的互操作性。 可以使用此格式通过 AMQP 协议连接到事件流。
选择“显示示例代码”按钮时,你会看到现成可用的 Java 代码以及 AMQP 格式的连接密钥信息。
卡 夫 卡
Kafka 格式与 Apache Kafka 协议兼容,后者是一种流行的分布式流式处理平台,支持高吞吐量和低延迟的数据处理。 你可以使用 Kafka 协议格式的“SAS 密钥身份验证”信息来连接到事件流并流式传输事件。
选择“显示示例代码”按钮时,你会看到现成可用的 Java 代码,包括 Kafka 格式的必需连接密钥。 复制它供你使用。
有关将自定义终结点与 Kafka 协议配合使用的明确指南,请参阅 本教程。 它提供了使用支持 Kafka 协议的自定义终结点进行流式传输和消费事件的详细步骤。
注意
- 可以选择适合应用程序需求和偏好的协议格式,然后将连接字符串复制并粘贴到应用程序中。 你还可以参考或复制示例代码,其中显示了如何使用各种协议来发送或接收事件。
- 若要退出示例代码视图,请选择“隐藏示例代码”。
相关内容
有关受支持源的列表,请参阅在事件流中添加事件源
先决条件
- 使用“参与者”权限或更高权限在“Fabric 容量”许可证模式或“试用”许可证模式下访问工作区。
- 如果没有事件流,请创建一个事件流。
添加自定义应用作为源
如果要将自己的应用程序与事件流连接,可以添加自定义应用源。 然后,使用在自定义应用中公开的连接终结点,从自己的应用程序将数据发送到事件流。
若要添加自定义应用源:
获取“详细信息”窗格上的终结点详细信息以发送事件
成功将自定义应用程序创建为源后,可以在“详细信息”窗格上查看信息。
“详细信息”窗格有三个协议选项卡:“事件中心”、“AMQP”和“Kafka”。 每个协议选项卡包含三个页面: 基本、 SAS 密钥身份验证和 Entra ID 身份验证。 这些页面提供特定于所选协议的终结点信息。
- “ 基本 ”页显示自定义终结点的名称、类型和状态。
-
SAS 密钥身份验证 和 Entra ID 身份验证 是连接到应用程序的两种受支持的身份验证方法:
- SAS 密钥身份验证 提供使用共享访问签名(SAS)密钥生成和使用事件流数据所需的信息。
- Entra ID 身份验证 允许安全主体(例如用户或服务主体)使用 Microsoft Entra ID 身份验证使用 Eventstream 数据。
有关使用 Entra ID 身份验证的步骤,请参阅 在事件流中为应用程序启用 Entra ID 身份验证。
以下部分介绍如何使用 SAS 密钥身份验证连接到自定义终结点目标。
事件中心
“事件中心”选项卡上的“密钥”页包含与事件中心的连接字符串相关的信息。 该信息包括“事件中心名称”、“共享访问密钥名称”、“主密钥”和“连接字符串 - 主密钥”。
事件中心格式是连接字符串的默认设置,它与 Azure 事件中心 SDK 兼容。 使用此格式,你可以通过事件枢纽协议连接到事件流。
以下示例显示了事件中心格式的连接字符串的呈现效果:
Endpoint=sb://eventstream-xxxxxxxx.servicebus.windows.net/;SharedAccessKeyName=key_xxxxxxxx;SharedAccessKey=xxxxxxxx;EntityPath=es_xxxxxxx
在“事件中心”页上选择“显示示例代码”按钮,以获取随时可用的代码,其中包括有关事件中心中连接密钥的必需信息。 只需将其复制并粘贴到应用程序中即可使用。
卡 夫 卡
Kafka 格式与 Apache Kafka 协议兼容,后者是一种流行的分布式流式处理平台,支持高吞吐量和低延迟的数据处理。 可以使用 Kafka 协议格式的“密钥”和“示例代码”信息来连接到事件流并流式传输事件。
选择 Kafka 页上的“显示示例代码”按钮以获取现成的代码,包括 Kafka 格式所需的连接键。 只需复制它即可使用。
AMQP(高级消息队列协议)
AMQP 格式与 AMQP 1.0 协议兼容,后者是一种标准消息传递协议,支持各种平台和语言之间的互操作性。 可以使用此格式通过 AMQP 协议连接到事件流。
在 AMQP 页面上选择“显示示例代码”按钮,以 AMQP 格式获取具有连接密钥信息的现成代码。
可以选择适合应用程序需求和偏好的协议格式,然后将连接字符串复制并粘贴到应用程序中。 还可以引用或复制“示例代码”页上的示例代码,其中显示了如何使用各种协议发送或接收事件。
相关内容
若要了解如何将其他源添加到 eventstream,请参阅以下文章: