将 IBM Cloud Logs 与 Event Streams 集成
您可以使用 IBM® Event Streams for IBM Cloud® 和 IBM Cloud Logs 来流式传输和管理日志数据。IBM® Event Streams for IBM Cloud® 是一个可扩展、可管理的 Apache Kafka 服务,应用程序可通过创建消息并将其发送到主题来发送数据。 应用程序可以订阅这些主题以接收消息,从而实现实时数据处理和分析。
启用后更新流配置时,会自动选择更改。 更改应用需要几分钟时间。
先决条件
-
IBM® Event Streams for IBM Cloud® 实例与 IBM Cloud Logs 实例配置在同一账户中,您计划从该账户流式传输数据。
检查服务计划的限制。 有关更多信息,请参阅 限制和配额。
-
您有权限在 IBM® Event Streams for IBM Cloud® 实例中创建主题。
要在 Event Streams 中创建主题,您必须拥有 Event Streams 实例的 manager 角色。 该角色包括 messagehub.topic.manage 允许应用程序或用户创建或删除主题的 IAM 操作角色。
-
您拥有在 IBM® Cloud Logs 实例中配置流的权限。
您必须具有经理服务角色。
创建服务到服务授权
从 IBM® Cloud Logs 实例向 Event Streams 实例中定义的主题发送数据的授权权限是通过在 IBM Cloud 的 IAM 中配置服务到服务授权来完成的。
要配置服务到服务授权,请参阅 创建 S2S 授权以使用 Event Streams 服务。
创建主题
在 IBM® Event Streams for IBM Cloud® 实例中,您必须定义一个主题,让 IBM Cloud Logs 实例流数据。
完成以下步骤创建 Event Streams 主题:
-
单击菜单图标
> 资源列表。
-
查找您计划使用的 Event Streams 实例,并将其选中。
-
在 Event Streams 实例控制台中,单击 Topics。
-
单击 创建主题。
-
输入主题名称,然后单击 下一步。
-
输入分区数,然后单击 下一步。
主题由一个或多个分区组成。 分区是经过排序的消息列表。 分区分布在代理程序中,以提高主题的可扩展性。 您还可使用分区在使用者组的成员之间分发消息。
-
选择信息保留。
邮件保留时间定义了邮件被删除前的保留时间。 如果在此时间内使用者未读取您的消息,那么将错过这些消息。
-
单击 创建主题。
配置流媒体
配置 IBM Cloud Logs 实例,将数据流传输到 IBM® Event Streams for IBM Cloud® 实例中的主题。
完成以下步骤:
-
单击 Data pipeline 图标
> Streams。
-
单击 + 添加流。
-
配置数据流:
-
在 Stream name 中,输入您选择的名称。
-
在 Stream Url 中,输入 _Bootstrap 服务器_列表。 完成以下步骤,获取列表:
单击菜单图标
> 资源列表。
查找您计划使用的 Event Streams 实例,并将其选中。
选择主题。 然后,单击 连接到此主题
在 Resources 部分,复制所提供的 _Bootstrap 服务器_列表。
连接对话框 -
在主题名称中,输入IBM® Event Streams for IBM Cloud®主题的名称。
-
要限制将发送到主题的数据,请输入与要发送的日志相匹配的查询。 例如,
$m.severity == ERROR有关如何定义数据规则的详细信息,请参阅 配置流数据规则。
-
下图显示了一个配置示例:
验证配置
在开始流式传输之前,验证是否可以将测试日志行样本流式传输到主题。
完成以下步骤:
-
使用 Kafka 工具安全连接到 IBM® Event Streams for IBM Cloud® 实例。 例如,您可以使用 Use Kafka Connect 或 ksqlDB。
-
发送日志样本以验证连接。
单击 发送样本日志 测试连接。 一分钟后,您就会在控制台中看到示例信息。
开始流媒体播放
验证成功接收样本日志后,将流配置设置为活动,然后单击 创建流。
启用流式配置后,需要几分钟才能开始流式传输。
现在,您的 IBM® Event Streams for IBM Cloud® 将根据指定的查询过滤并接收消息。