S3 输入插件
编辑S3 输入插件
编辑对于其他版本,请参阅 版本化插件文档。
获取帮助
编辑如有关于插件的问题,请在 Discuss 论坛中发帖。如需报告错误或提出功能请求,请在 Github 中创建一个 issue。有关 Elastic 支持的插件列表,请参阅 Elastic 支持矩阵。
描述
编辑从 S3 存储桶中的文件流式传输事件。
S3 输入插件仅支持 AWS S3。不支持其他兼容 S3 的存储解决方案。
每个文件中的每一行都会生成一个事件。以 .gz
结尾的文件将作为 gzip 压缩文件处理。
已归档到 AWS Glacier 的文件将被跳过。
事件元数据和 Elastic 通用架构 (ECS)
编辑此插件将 cloudfront 元数据添加到事件中。禁用 ECS 兼容性时,该值存储在根级别。启用 ECS 时,该值存储在 @metadata
中,其他插件可以在您的管道中使用它。
以下是 ECS 兼容模式如何影响输出。
ECS 已禁用 | ECS v1 | 可用性 | 描述 |
---|---|---|---|
cloudfront_fields |
[@metadata][s3][cloudfront][fields] |
当文件是 CloudFront 日志时可用 |
日志的列名 |
cloudfront_version |
[@metadata][s3][cloudfront][version] |
当文件是 CloudFront 日志时可用 |
日志的版本 |
S3 输入配置选项
编辑此插件支持以下配置选项以及稍后描述的 常用选项。
设置 | 输入类型 | 必需 |
---|---|---|
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
是 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
另请参阅 常用选项,了解所有输入插件支持的选项列表。
access_key_id
编辑- 值类型为 字符串
- 此设置没有默认值。
此插件使用 AWS SDK 并支持多种获取凭据的方式,将按以下顺序尝试:
- 静态配置,使用 logstash 插件配置中的
access_key_id
和secret_access_key
参数 - 由
aws_credentials_file
指定的外部凭据文件 - 环境变量
AWS_ACCESS_KEY_ID
和AWS_SECRET_ACCESS_KEY
- 环境变量
AMAZON_ACCESS_KEY_ID
和AMAZON_SECRET_ACCESS_KEY
- IAM 实例配置文件(在 EC2 中运行时可用)
additional_settings
编辑- 值类型为 哈希表
- 默认值为
{}
用于参数化与 s3 连接的设置和相应值的键值对。请参阅 AWS SDK 文档 中的完整列表。示例
input { s3 { access_key_id => "1234" secret_access_key => "secret" bucket => "logstash-test" additional_settings => { force_path_style => true follow_redirects => false } } }
aws_credentials_file
编辑- 值类型为 字符串
- 此设置没有默认值。
包含 AWS 凭据哈希表的 YAML 文件的路径。只有在未设置 access_key_id
和 secret_access_key
时才会加载此文件。文件内容应如下所示:
:access_key_id: "12345" :secret_access_key: "54321"
backup_add_prefix
编辑- 值类型为 字符串
- 默认值为
nil
在处理后,将前缀附加到密钥(包括 s3 中的文件名的完整路径)。如果备份到另一个(或相同的)存储桶,这实际上允许您选择一个新的文件夹来放置文件。
ecs_compatibility
编辑- 值类型为 字符串
-
支持的值为:
-
disabled
:不使用与 ECS 兼容的字段名称 -
v1
,v8
:使用与 Elastic 通用架构兼容的元数据字段
-
控制此插件与 Elastic 通用架构 (ECS) 的兼容性。有关详细信息,请参阅 事件元数据和 Elastic 通用架构 (ECS)。
endpoint
编辑- 值类型为 字符串
- 此设置没有默认值。
要连接到的端点。默认情况下,它是使用 region
的值构建的。这在连接到与 S3 兼容的服务时很有用,但请注意,这些服务不能保证与 AWS SDK 正确配合使用。
exclude_pattern
编辑- 值类型为 字符串
- 默认值为
nil
要从存储桶中排除的密钥的 Ruby 风格正则表达式。
请注意,匹配该模式的文件将在列出 *之后* 被跳过。如果可能,请考虑使用 prefix
。
示例
"exclude_pattern" => "\/2020\/04\/"
此模式将排除路径中包含“/2020/04/”的所有日志。
include_object_properties
编辑- 值类型为 布尔值
- 默认值为
false
是否将 S3 对象的属性 (last_modified、content_type、metadata) 包含到 [@metadata][s3]
中的每个事件中。无论此设置如何,[@metadata][s3][key]
将始终存在。
sincedb_path
编辑- 值类型为 字符串
- 默认值为
nil
写入 since 数据库的位置(跟踪上次处理的文件添加到 S3 的日期)。默认情况下,会在 _ {path.data}/plugins/inputs/s3/_ 目录中写入 sincedb 文件。
如果指定,此设置必须是文件名路径,而不仅仅是目录。