Webhdfs 输出插件
编辑Webhdfs 输出插件
编辑- 插件版本: v3.1.0
- 发布日期: 2023-10-03
- 更新日志
其他版本,请参见 版本化插件文档.
获取帮助
编辑如有任何关于插件的问题,请在 Discuss 论坛中发帖提问。如发现错误或有功能需求,请在 Github 中提交 issue。如需查看 Elastic 支持的插件列表,请参考 Elastic 支持矩阵.
依赖项
编辑此插件不依赖于 Hadoop 的 jar 包,从而减少了配置和兼容性问题。它使用 Kazuki Ohta 和 TAGOMORI Satoshi 的 webhdfs gem(@see: https://github.com/kzk/webhdfs)。如果使用压缩功能,则可选依赖项为 zlib 和 snappy gem。
操作说明
编辑如果出现以下错误:
Max write retries reached. Exception: initialize: name or service not known {:level=>:error}
请确保运行 Logstash 的主机可以解析 NameNode 的主机名。在创建/追加文件时,webhdfs 有时会发送一个 307 TEMPORARY_REDIRECT
,其中包含其运行机器的 HOSTNAME
。
用法
编辑这是一个 Logstash 配置示例
input { ... } filter { ... } output { webhdfs { host => "127.0.0.1" # (required) port => 50070 # (optional, default: 50070) path => "/user/logstash/dt=%{+YYYY-MM-dd}/logstash-%{+HH}.log" # (required) user => "hue" # (required) } }
Webhdfs 输出配置选项
编辑此插件支持以下配置选项以及稍后描述的 常用选项。
设置 | 输入类型 | 必填 |
---|---|---|
字符串,取值范围为 |
否 |
|
否 |
||
是 |
||
否 |
||
否 |
||
否 |
||
是 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
字符串,取值范围为 |
否 |
|
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
是 |
另见 常用选项,了解所有输出插件支持的选项列表。
path
编辑- 这是必填设置。
- 值类型为 字符串
- 此设置没有默认值。
要写入文件的路径。此处可以使用事件字段,以及 joda 时间格式的日期字段,例如:/user/logstash/dt=%{+YYYY-MM-dd}/%{@source_host}-%{+HH}.log
single_file_per_thread
编辑- 值类型为 布尔值
- 默认值为
false
避免在多个线程中追加到同一文件。这解决了多个 Logstash 输出线程和 webhdfs 中锁定文件租约的一些问题。如果将此选项设置为 true,则需要在 path 配置设置中使用 %{[@metadata][thread_id]}。
snappy_bufsize
编辑- 值类型为 数字
- 默认值为
32768
设置 snappy 块大小。仅适用于流格式。默认为 32k。最大值为 65536 @see http://code.google.com/p/snappy/source/browse/trunk/framing_format.txt
常用选项
编辑所有输出插件都支持这些配置选项