Example of incoming nested data below.
Ultimately, I want logstash to submit 9 events for this single object. 1 of type storage
2 of type volume
3 of type share
and 3 of type client
I'm looking for something like the split
filter, but that works on arrays of objects.
{
'@metadata': {"type": "storage"},
"type": "storage",
"name": "chassis3",
"location": "Chicago",
"total_files": 2000000,
"total_capacity": 300,
"volumes": [
{
"name": "vol1",
"available": 50,
"capacity": 150,
"free": 65,
"reserved":100,
"used":85
},
{
"name": "vol2",
"available": 100,
"capacity": 150,
"free": 110,
"reserved":50,
"used":40
}
],
"shares": [
{
"name": "share1",
"volume": "vol1",
"capacity": 75,
"free": 10,
"used": 65,
"files": 100000
},
{
"name": "share2",
"volume": "vol1",
"capacity": 25,
"free": 5,
"used": 20,
"files": 25000
},
{
"name": "share3",
"volume": "vol2",
"capacity": 50,
"free": 10,
"used": 40,
"files": 75000
}
],
"clients": [
{
"user": "bob",
"read": 100,
"write": 5
},
{
"user": "alice",
"read": 4,
"write": 100
},
{
"user": "eve",
"read": 0,
"write": 0
}
]
}