json - Logstash:如何将多行 json 对象和 add_field 拆分为 kibana?
问题描述
我有以下 JSON 数据,我需要将每个对象拆分为单独的消息和 add_filed,但是根据我当前的配置,整个 JSON 正在变成一条消息,我不确定我做错了什么,任何帮助或正确的方向将非常有帮助。
[
{
"SOURCE": "Source A",
"Model": "ModelABC",
"Qty": "3"
},
{
"SOURCE": "Source B",
"Model": "MoBC",
"Qty": "31"
},
{
"SOURCE": "Source C",
"Model": "MoBCSss",
"Qty": "3qq"
}
]
logstash.config
input {
file {
path => "/usr/share/logstash/sample-log/Test-Log-For-Kibana.json"
start_position => "beginning"
codec => multiline {
pattern => "^}"
negate => true what => previous auto_flush_interval => 1 multiline_tag => ""
}
}
}
filter {
json {
source => "message"
target => "someField"
}
mutate {
add_field => {
"SOURCE" => "%{[someField][SOURCE]}"
"Model" => "%{[someField][Model]}"
"Qty" => "%{[someField][Qty]}"
}
}
}
output {
stdout {
codec => rubydebug
}
elasticsearch {
hosts => "elasticsearch:9200"
user => "elastic"
password => "changeme"
}
}
解决方案
推荐阅读
- ruby-on-rails - Ruby on Rails Active Record 查询连接两个表并根据条件查询
- python - 最佳性能的任务解决方案
- java - 找不到 macOS 的“Extensions”文件夹中的 JDBC 驱动程序
- html - 对象中的链接可以加载新页面吗?
- sqlite - 在 sqlite 上调用预定义查询时出错(React-Native)
- haskell - 我的 Haskell 代码出现一个非常普遍的错误:解析错误(可能不正确的缩进或不匹配的括号)
- c - 运行代码时如何查看我在 Netbeans 中编写的内容?
- c# - 如何使用 LINQ 和 C# 从继承的类中选择所有列
- raspberry-pi - 如何使用端口在 PC 上打开 Rasperry IP
- javascript - javascript幻灯片的图像数组没有出现