Hi,
I have seen multiple thread talking about this problem but with some differences. I have the following log schema:
"messageId": 123,
"timestamp": "2020-09-14T03:35:37",
"extra": {
    "name": "typefood",
    "food_changes": [ {
         "property": "coca",
         "data_type": "experience"},
          {"property": "tea",
          "data_type": "amazing"
          }
    ]
I would like to get what you can see on "food_changes" splitted into two different logs like this outcome:
    "message.id": 123,
    "timestamp": "2020-09-14T03:35:37",
    "extra.name": "typefood"
    "extra.food_changes.property": "coca"
    "extra.food_changes.data_type": "experience"
    "message.id": 123,
    "timestamp": "2020-09-14T03:35:37",
    "extra.name": "typefood"
    "extra.food_changes.property": "tea"
    "extra.food_changes.data_type": "amazing"
What I am trying is:
filter {
json {
source => "message"
}
split {
field => "[extra][food_changes]"
}
mutate {
add_field =>
"[message][id]" => "%{[messageid]}
}
But it only shows in Kibana the fields for the first log...
"messageid": 123,
"timestamp": "2020-09-14T03:35:37",
"extra.name": "typefood"
"extra.food_changes.property": "coca"
"extra.food_changes.data_type": "experience"
not for the second log...
"messageid": 123,
"timestamp": "2020-09-14T03:35:37",
"extra.name": "typefood"
"extra.food_changes.property": "tea"
"extra.food_changes.data_type": "amazing"
Can someone please give me some insight?