本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将日志数据导出到 Amazon S3
本章为您提供了信息,以便您可以将日志数据从日志组导出到 Amazon S3 存储桶进行自定义处理和分析,或加载到其他系统。您可以将数据导出到同一账户或其他账户中的存储桶。
您可执行以下操作:
-
将日志数据导出到由 SSE-KMS in AWS Key Management Service ()AWS KMS加密的 S3 存储桶
-
将日志数据导出到已启用 S3 对象锁定且具有保留期的 S3 桶
注意
仅标准日志类中的日志组支持导出到 Amazon S3。有关日志类的更多信息,请参阅 日志类。
要开始导出进程,您必须创建一个用于存储导出的日志数据的 S3 存储桶。您可以将已导出的文件存储在您的 S3 桶中,并定义 Amazon S3 生命周期规则以自动存档或删除已导出的文件。
您可以将使用 AES -256 或-加密的存储桶导出到 S3 存储桶。SSE KMS不支持导出到使用 DSSE-KMS 加密的存储桶。
可将多个日志组或多个时间范围的日志导出至同一个 S3 存储桶中。要分开每个导出任务的日志数据,您可以指定一个前缀,以便用作所有导出对象的 Amazon S3 键前缀。
注意
不确保会对导出文件中的日志数据块进行基于时间的排序。您可以使用 Linux 实用程序对导出的日志字段数据进行排序。例如,以下实用程序命令对单个文件夹中所有 .gz
文件中的事件进行排序。
find . -exec zcat {} + | sed -r 's/^[0-9]+/\x0&/' | sort -z
以下实用程序命令对多个子文件夹中的.gz 文件进行排序。
find ./*/ -type f -exec zcat {} + | sed -r 's/^[0-9]+/\x0&/' | sort -z
此外,您还可以使用其他 stdout
命令将排序后的输出通过管道传输到另一个文件进行保存。
日志数据可能需要长达 12 小时才能用于导出。导出任务在 24 小时后超时。如果导出任务超时,请在创建导出任务时缩短时间范围。
有关日志数据的近实时分析,请参阅 使用 “日志见解” 分析 CloudWatch 日志数据 或 使用订阅实时处理日志数据。
概念
开始之前,请熟悉以下导出概念:
- 日志组名称
-
与导出任务关联的日志组的名称。该日志组中的日志数据将导出至指定的 S3 桶中。
- 从(时间戳)
-
所需的时间戳,表示为自 1970 年 1 月 1 日 00:00:00 以来的毫秒数。UTC日志组中在此时间或之后提取的所有日志事件都将被导出。
- 至 (时间戳)
-
所需的时间戳,表示为自 1970 年 1 月 1 日 00:00:00 以来的毫秒数。UTC日志组中该时间之前获得的所有日志事件都会被导出。
- 目标存储桶
-
与导出任务关联的 S3 桶的名称。此存储桶用于导出指定日志组中的日志数据。
- 目标前缀
-
可选属性,用作所有导出对象的 Amazon S3 键前缀。这有助于在您的存储桶中创建类似于文件夹的组织结构。