教程:聆听 Amazon Elasticsearch Service EventBridge 事件 - Amazon Elasticsearch Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

教程:聆听 Amazon Elasticsearch Service EventBridge 事件

在本教程中,您将设置一个简单的Amazon Lambda函数来监听 Amazon Elasticsearch Service (Amazon ES) 事件并将事件写入 CloudWatch Logs 流。

Prerequisites

本教程假定您已经有一个 Amazon ES 域。如果您尚未创建域,请按照创建和管理 Amazon Elasticsearch Service 域以创建一个配置文件。

第 1 步:创建 Lambda 函数

在此过程中,您将创建一个简单的 Lambda 函数来充当 Amazon ES 事件消息的目标。

创建目标 Lambda 函数

  1. 打开 Amazon Lambda 控制台,地址:https://console.aws.amazon.com/lambda/

  2. 选择创建函数从头开始创作

  3. 适用于函数名称中,输入E-事件处理程序

  4. 对于运行时,选择 Python 3.8

  5. 选择创建函数

  6. Function code 部分中,编辑示例代码以匹配以下示例:

    import json def lambda_handler(event, context): if event["source"] != "aws.es": raise ValueError("Function only supports input from events with a source type of: aws.es") print(json.dumps(event))

    这是一个简单的 Python 3.8 函数,可输出由 Amazon ES 发送的事件。如果一切配置正确,则在本教程结束时,事件详细信息将在与此 Lambda 函数关联的 CloudWatch Logs 日志流中。

  7. 选择 Deploy (部署)

第 2 步:注册事件规则

在此步骤中,您将创建一个 EventBridge 规则,用于捕获来自您的 Amazon ES 域的事件。该规则捕获定义该规则的账户中的所有事件。事件消息本身包含有关事件源的信息(包括事件源源源源源源源源源源源源源源源源源源源源源源 您可以使用此信息以编程方式过滤和排序事件。

创建 EventBridge 规则

  1. 从打开 EventBridge 控制台https://console.aws.amazon.com/events/

  2. 选择 Create rule (创建规则)

  3. 命名规则名称E-事件规则

  4. 适用于定义模式中,选择事件模式,然后选择自定义模式

  5. 在文本区域中粘贴以下事件模式:

    { "source": ["aws.es"] }

    Save添加模式后。此模式适用于您的所有 Amazon ES 域以及每个 Amazon ES 事件。或者,您也可以创建一个更具体的模式来筛选掉一些结果。

  6. 将目标保留为Lambda 函数,然后选择E-事件处理程序从下拉列表中。

  7. 选择创建

第 3 步:测试配置

下次您在通知部分,如果一切配置正确,则触发 Lambda 函数并将事件数据写入该函数的 CloudWatch Logs 日志流。

测试配置

  1. 通过以下网址打开 CloudWatch 控制台:https://console.aws.amazon.com/cloudwatch/

  2. 在导航窗格中,选择日志并选择 Lambda 函数的日志组(例如,/aws/lambda /es 事件处理程序)。

  3. 选择日志流以查看事件数据。