Avro 编解码器插件
编辑Avro 编解码器插件
编辑- 插件版本:v3.4.1
- 发布日期:2023-10-16
- 变更日志
对于其他版本,请参阅 版本化插件文档。
获取帮助
编辑如有关于插件的问题,请在 Discuss 论坛中发起主题讨论。如发现错误或有功能请求,请在 Github 中提交问题。有关 Elastic 支持的插件列表,请查阅 Elastic 支持矩阵。
事件元数据和 Elastic 通用架构 (ECS)
编辑除了将原始消息添加到 [event][original]
之外,该插件的行为与 ECS 兼容性无关。
编码
编辑此编解码器用于将单个 Logstash 事件序列化为 Avro 数据(Avro 二进制 Blob)。它不会将 Logstash 事件编码到 Avro 文件中。
解码
编辑此编解码器用于反序列化单个 Avro 记录。它不用于读取 Avro 文件。Avro 文件具有独特的格式,必须在输入时进行处理。
部分反序列化
众所周知,Avro 格式支持任意字段的部分反序列化,提供包含用于序列化数据的部分架构的架构。此编解码器 不支持任意字段的部分反序列化。仅当提供包含用于序列化数据架构的前 N
个字段(并按相同顺序排列)的架构时,部分反序列化可能有效。
用法
编辑使用 Kafka 输入的示例用法。
input { kafka { codec => avro { schema_uri => "/tmp/schema.avsc" } } } filter { ... } output { ... }
Avro 编解码器配置选项
编辑设置 | 输入类型 | 必需 |
---|---|---|
否 |
||
字符串,其中之一为 |
否 |
|
是 |
||
否 |
||
否 |
ecs_compatibility
编辑- 值类型为 字符串
-
支持的值为
-
disabled
:Avro 数据添加到根级别 -
v1
,v8
:Elastic 通用架构兼容行为(还会添加[event][original]
)
-
控制此插件与 Elastic 通用架构 (ECS) 的兼容性。
encoding
编辑- 值可以是以下任何一个:
binary
、base64
- 默认值为
base64
设置 Avro 有效负载的编码。使用 base64
(默认值)表示此编解码器发送或预期接收 base64 编码的字节。
将此选项设置为 binary
以指示此编解码器发送或预期接收二进制 Avro 数据。