S3 输入插件
编辑S3 输入插件编辑
有关其他版本,请参阅 版本化插件文档。
获取帮助编辑
有关插件的问题,请在 Discuss 论坛中发布主题。对于错误或功能请求,请在 Github 中创建问题。有关 Elastic 支持的插件列表,请参阅 Elastic 支持矩阵。
描述编辑
从 S3 存储桶中的文件流式传输事件。
S3 输入插件仅支持 AWS S3。不支持其他与 S3 兼容的存储解决方案。
每个文件中的每一行都会生成一个事件。以 .gz
结尾的文件将被视为 gzip 压缩文件。
已归档到 AWS Glacier 的文件将被跳过。
事件元数据和 Elastic Common Schema (ECS)编辑
此插件将 cloudfront 元数据添加到 event 中。当 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 Common Schema 兼容的元数据字段
-
控制此插件与 Elastic Common Schema (ECS) 的兼容性。有关详细信息,请参阅 事件元数据和 Elastic Common Schema (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]
始终存在。
role_arn
编辑
- 值类型为 字符串
- 此设置没有默认值。
要假设的 AWS IAM 角色(如果有)。这用于生成临时凭据,通常用于跨帐户访问。有关更多信息,请参阅 AssumeRole API 文档。
sincedb_path
编辑
- 值类型为 字符串
- 默认值为
nil
写入 since 数据库的位置(跟踪上次处理的文件添加到 S3 的日期)。默认情况下,sincedb 文件将写入目录 {path.data}/plugins/inputs/s3/ 中。
如果指定,此设置必须是文件名路径,而不仅仅是目录。
通用选项编辑
以下配置选项受所有输入插件支持