Составные записи Elasticsearch на основе значений столбцов в разных именах столбцов - PullRequest
0 голосов
/ 23 января 2020

У меня есть большой набор журналов из нескольких приложений в Elasticserach. данные будут выглядеть как структура ниже.

{
req.name:"app1",
req.body.id: "123",
res.status:200,
res.body.id:123
}
{
req.name:"app1",
req.body.id: "456",
res.status:200,
res.body.id:456
}
{
req.name:"app2",
req.body.app1id: "123",
res.status:200,
res.body.data:"success"
}
{
req.name:"app1",
req.body.id: "789",
res.status:200,
res.body.id:789
}
{
req.name:"app2",
req.body.app1id: "456",
res.status:200,
res.body.data:success
}

В приведенных выше данных необходимо агрегировать записи на основе req.body.id из приложения app1 и req.body.app1id из приложения app2

. Ожидается, что общий ответ в Elasticsearch отличается, из моего понимания ниже просто пример ответа, как мне нужно

[{
req.name:"app1",
req.body.id: "123",
res.status:200,
res.body.id:123
}
{
req.name:"app2",
req.body.app1id: "123",
res.status:200,
res.body.data:"success"
}]


[{
req.name:"app1",
req.body.id: "456",
res.status:200,
res.body.id:456
}
{
req.name:"app2",
req.body.app1id: "456",
res.status:200,
res.body.data:success
}]

Также Является ли этот тип фильтра мы можем сделать это в кибане

...