我在日志中有以下信息。它采用JSON格式。
{
"someField":"someValue",
"columns":"[colName1, colName2, colName3, ... colNameN]",
"someField":"someValue"
}
我希望将其存储为同一字段columns
中的数组。
我想要显示的用例是有多少用户使用了名为colName1
的特定列及其数量。
我正在使用ELK stak 5.x
答案 0 :(得分:2)
如果您的来源是直接json格式
使用json插件
filter {
json {
source => "message"
}
}
数组字段将自动转换为数组
https://www.elastic.co/guide/en/logstash/current/plugins-filters-json.html
答案 1 :(得分:1)
output.conf中的Mutate可能对你有帮助。
虽然不支持从字符串到数组的直接转换。我在一段时间后遇到了相同的用例,使用了合并功能。我建议有一些虚拟字段并与'列合并。字段来创建新的数组字段。希望这会有所帮助。