Kibana-获取特定文档周围的日志,并用模式标记上下文的开始和结束范围



例如,我在Kibana中看到一个错误日志,但我不仅对这个错误感兴趣,而且对这一行的上下文感兴趣,也就是说,我想知道这个错误前后发生了什么。例如:

  • 订单失败,状态为";失败";,但是就在这一行之前的日志将包含导致此错误的方法名
  • 在这之前的5-10行,我知道会有一行像";开始处理状态为xxx"的订单xxxxx
  • 并且在该日志之后15-20行;结束状态为xxx的处理">

所有这些加在一起,标志着处理此特定订单的生命周期。所有这些台词都是我所说的";上下文";。

如何在Kibana中搜索所有这些行?(假设所有文字都在字段"message"中(

现在,我知道我们可以";查看周围的文档";,但这还不够有效。

https://www.elastic.co/guide/en/kibana/current/xpack-apm.html

好吧,只要了解一下弹性APM,它就能解决部分问题。APM可以记录";span";以及";交易;以形成";分布式轨迹";,然后将信息添加到字段";trace";到日志,然后我们可以聚合具有相同跟踪id的所有日志,以了解微服务中该事件的上下文。

现在问题变为";如何使用APM添加跟踪";。而且,我们的一个微服务是反应式的,不能很容易地适应APM:反应式管道上下文是基于线程的,在线程之间没有简单的方法将跟踪从一个上下文转移到另一个上下文。因此,这是APM无法解决的问题。

但至少现在我们知道,在命令式应用程序中,我们有办法。

相关内容

最新更新