在 Grafana 中匹配字符串值

问题描述

给你们提供一些背景信息:我有一个非常复杂且非自动的服务发布过程,许多其他服务依赖于该过程。此发布过程包括创建新的 kafka 主题和更改依赖此服务的其他服务中的一组消费者。我现在想建立一个监控系统(改变发布过程是一项更大的工作,将来必须要做)。我一直在尝试在 Grafana 中实现它。我的想法是,我可以通过按名称对现有主题进行排序来获取最新创建的主题主题版本每发布一个 X.Y.Z 增加),然后还可以检查其余服务目前正在消费哪个主题

所以,我有两个查询

sum(irate(kafka_server_brokertopicmetrics_messagesin_total{topic=~"^topic-v.*$"}[1m])) by (topic)

sum(irate(consumers_kafka_processed_messages_total{consumed_topic=~"^topic-v.*$"}[1m])) by (consumed_topic)

一个返回给定该正则表达式存在的所有主题,第二个返回给定该正则表达式的其他服务正在使用的所有主题

查询以这种格式返回数据

(first query)      |  (second query)
Time               |  Time
topic              |  consumed_topic
messagesin_total   |  processed_messages_total

但在两个单独的表中。即,一张表用于 topic 值,一张表用于 consumed_topic 值。

借助 Grafana 中的转换,我希望能够生成一个仪表板,我可以在其中查看是否 topic==consumed_topic 并使其显示为绿色(如果是这种情况)。我已经玩了几个小时的转换,但我似乎无法让它工作。我已经尝试将表减少到 topicconsumed_topic 字段上的最小值。这给我留下了一张看起来像

的桌子
Field          |        Last (not null)
-------------------------------------
topic          |        topic-vX.Y.Z
Value #A       |        0
consumed-topic |        consumed-topic-vX.Y.Z
Value #B       |        0

从那时起我想要得到类似的东西

Latest Release |        Services version
----------------------------------------
topic-vX.Y.Z   |        consumed-topic-vX.Y.Z

这样我就可以比较这些值,看看它们是否正确。但我不知道如何到达那里..

我是不是想太多了?我觉得我把它复杂化了很多。

提前致谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...