Grafana 的奇技淫巧

admin 2024年10月29日22:22:02评论14 views字数 779阅读2分35秒阅读模式

Grafana 是一款强大的可视化工具,不止是用于 Prometheus 做数据源,还可以集成数据库、日志等作为数据源整体使用。

最近我在配置一个监控面板,其中的数据由 Prometheus 和 MySQL 组成;简单来说就是一个指标的查询条件是从数据库中来的。

pulsar_subscription_back_log_no_delayed{topic=~"$topic",subscription=~"$subscription"}

其中的 topic 数据是从  MySQL 中来的,其实就是在 Grafana 声明一个变量,从数据库返回了一个列表。

Grafana 的奇技淫巧

因为我们的查询条件是 topic=~"$topic"是正则匹配,所以理论上应该把所有的 topic 关联的数据都查询出来。

Grafana 的奇技淫巧

但实际情况是任何数据都查不到。

查看发出去的原始请求后才发现问题出在哪里:

原来是选择所有 topic 后 grafana 会~~~~自动对参数转义,这个我查了好多资料包括咨询 ChatGPT 都没有得到解决。

经过多次测试,发现只要开启多选 grafana 就会自动转义。Grafana 的奇技淫巧

最后我只能想到一个不需要生成多行记录的办法:将所有数据合并成一条记录。

Grafana 的奇技淫巧

这样的话就只会生成一条数据,其中包含了所有的 topic,也就避免了被转义。

SQL 中的 CONCAT 函数其实我也不知道怎么使用,还是 ChatGPT 告诉我的。

最后便能完美的查询出数据了。

有碰到类似问题的朋友可以尝试这个方法,我估计用到这个场景的并不多,不然 ChatGPT 也不会不知道

在这个大环境下我是如何找工作的

2023-06-20

Grafana 的奇技淫巧

云原生背景下如何配置 JVM 内存

2023-05-15

Grafana 的奇技淫巧

通过 Pulsar 源码彻底解决重复消费问题

2023-02-27

Grafana 的奇技淫巧

一个诡异的 Pulsar InterruptedException 异常

2023-02-23

Grafana 的奇技淫巧

原文始发于微信公众号(crossoverJie):Grafana 的奇技淫巧

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年10月29日22:22:02
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Grafana 的奇技淫巧https://cn-sec.com/archives/1863939.html

发表评论

匿名网友 填写信息