【问题标题】:Chart a divergence between two time fields in the same elasticsearch index with timelion用timelion绘制同一elasticsearch索引中两个时间字段之间的差异
【发布时间】:2020-06-10 06:00:21
【问题描述】:

所以我有一个包含大量数据的弹性搜索索引,我发现一些我想可视化的数据存在问题。在 itm.description 字段下匹配的索引中的某些项目例如 FOO 有两个称为 itm.timestamp 的时间戳条目itm.jmsTimestamp

这两个领域在几天前非常接近时开始出现相当大的分歧。两者之间正在进行一些 ActiveMQ 处理,因此这似乎是可能的原因,但我想可视化这是什么时候开始的,以及过去几天在 Kibana 中使用 timelion 的漂移情况。

.es(index=myindex*,q='itm.description:FOO',timefield='@itm.timestamp'),.es(index=myindex*,q='itm.description:FOO',timefield='@itm.jmsTimestamp')

很明显,这个查询并不是特别有用,因为它会产生两条平线。我需要什么来生成一个图表来显示使用 timelion 的两个时间戳之间的漂移差异?是否可以显示重叠的两个时间戳,或者绘制漂移图会更有用?

【问题讨论】:

    标签: elasticsearch kibana timelion


    【解决方案1】:

    您是否尝试过使用subtract-表达式?

    类似这样的:

    .es(index=myindex*, q='itm.description:FOO', timefield='@itm.timestamp', metric=max:'@itm.timestamp').subtract(.es(index=myindex*, q='itm.description:FOO', timefield='@itm.timestamp', metric=max'@itm.jmsTimestamp'))
    

    您不能使用字段的直接值,Timelion 需要聚合,因为它为每个存储桶呈现 1 个值。在我的示例中,我使用了 max-aggregation。

    另一种解决方案是引入一个新字段,您在索引时使用两个时间戳字段的增量填充该字段。同样,您需要使用聚合来将值显示在 y 轴上。

    【讨论】:

    • 我真的想要与查询匹配的每个数据点的两个字段中的直接值之间的差异,以便我可以看到指定时间段内的确切差异,timelion 不是这样做的地方?
    • 通过我上面概述的解决方案方法,可以计算出实际的增量(基于逐点计算)。 Kibana 本身并不是真正用于呈现单个文档,一个例外是 Discover 界面,另一个是新的 Maps 可视化。 Timelion 根本无法做到这一点,它专门用于可视化时间序列数据,创建代表时间间隔的存储桶,而不是单个文档。
    • 谢谢@DanielSchneiter,所以答案给出了一个空白图表,您是说不可能在两个时间字段之间进行区分吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多