我想知道logstash是否能够直接从csv文件创建字段名称,我能找到的就是像这样硬编码的方式:
csv {
separator => ","
columns => ["Timestamp",
"Imsi",
"imeitac",
"msisdn",
"mcc",
"mnc",
"rat",
"bearer",
"ID",
"Location"]
}
但是字段的顺序可能不一样,因此在运行时有更动态的方法来创建字段。基本上我希望能够在解析开始时根据csv文件的头创建所有字段。
我能找到的所有资源都表示不可能开箱即用,如果是这样的话,另一种可能的方法是什么?
答案 0 :(得分:0)
没有那么多,不。 Logstash适用于事件,在这种情况下,事件是文件中的各个行。当CSV过滤器看到事件时,它不知道之前发生了什么。
要执行您正在寻找的内容,您需要在json {}
输入上使用编解码器来摄取这些通风口。但是,我无法找到编解码器。如果您能够更改文件的格式,则会有一个Object.assign()
编解码器将为文件中找到的字段分配值。