使用订阅实时处理日志数据 - Amazon CloudWatch 日志
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用订阅实时处理日志数据

您可以使用订阅来访问来自 CloudWatch 日志的日志事件的实时提要,并将其传输到其他服务,例如亚马逊 Kinesis 流、Amazon Kinesis Data Firehose 流,Amazon Lambda或者用于自定义处理、分析或加载到其他系统。当将录入事件发送到接收它们的服务时,它们会经过 base64 编码并使用 gzip 格式进行压缩。

要开始订阅日志事件,请创建用于接收事件的接收资源,例如 Kinesis Data Streams 流。订阅筛选条件定义了筛选条件模式(用于筛选传输到您的Amazon资源的日志事件),以及有关匹配日志事件发送目的地的信息。

每个日志组最多只能有两个与其关联的订阅筛选条件。

注意

如果目标服务返回可重试的错误,例如限制异常或可重试的服务异常(例如 HTTP 5xx),则 CloudWatch 日志会继续重试传送长达 24 小时。 CloudWatch 如果错误是不可重试的错误(例如或),则日志不会尝试重新传送。 AccessDeniedException ResourceNotFoundException

CloudWatch 日志还会生成有关将日志事件转发给订阅的 CloudWatch 指标。有关更多信息,请参阅 Amazon CloudWatch 日志指标和维度

您还可以使用 CloudWatch 日志订阅将日志数据近乎实时地流式传输到 Amazon S OpenSearch ervice 集群。有关更多信息,请参阅将 CloudWatch 日志数据流式传输到 Amazon OpenSearch 服务

概念

每个订阅筛选条件都由以下关键元素组成:

日志组名称

要将订阅筛选条件关联到的日志组。上传到此日志组的所有日志事件都受订阅筛选条件的约束,与该筛选条件匹配的日志事件将被传输到接收匹配日志事件的目标服务。

筛选条件模式

对 CloudWatch 日志应如何解释每个日志事件中的数据的符号描述,以及限制传送到目标Amazon资源的内容的筛选表达式。有关筛选条件模式语法的更多信息,请参阅 筛选条件和模式语法

目标 ARN

要用作订阅源的目标的 Kinesis Data Streams 流、Kinesis Data Firehose 流或 Lambda 函数的 Amazon 资源名称(ARN)。

角色 ARN

一个 IAM 角色,它向 CloudWatch Logs 授予将数据放入所选目标所需的权限。Lambda 目标不需要此角色,因为 CloudWatch 日志可以从 Lambda 函数本身的访问控制设置中获得必要的权限。

分配

当目标是 Amazon Kinesis Data Streams 流中的流时,用于将日志数据分配到目标的方法。默认情况下,日志数据按日志流进行分组。为了实现更均匀的分配,您可以对日志数据进行随机分组。