我在AWS中有一个Lambda函数,它将日志报告给ELK实例 . 每次调用lambda函数都会生成一个与每个日志事件一起发送的唯一 invocation_id ,因此可以在ELK中识别来自单个调用的事件 . 在操作结束时,我发送一个"Done"事件 .

Lambda函数可能会失败或超时,然后不会发送“完成”事件 .

我想创建一个查询来显示所有没有“完成”事件的调用 . SQL并行可以是:

select invocation_id
from events
where invocation_id not in (select invocation_id
                            from events
                            where event_type = 'Done'
                            group by invocation_id)
group by invocation_id

我知道ElasticSearch中没有“子查询”,但也许有其他方法可以做到这一点?


EDIT:

我正在尝试不同的方法,请看这里:Logstash Filter: aggregate - auto save on timeout