Grafana - 我们如何加入来自 TimescaleDB 和 ElasticSearch 的数据?

Posted

技术标签:

【中文标题】Grafana - 我们如何加入来自 TimescaleDB 和 ElasticSearch 的数据?【英文标题】:Grafana - How can we join data from TimescaleDB and ElasticSearch? 【发布时间】:2021-10-30 18:50:24 【问题描述】:

根据两个数据源中存在的字段从 TimescaleDB 和 ElasticSearch 填充数据。

【问题讨论】:

您能否详细说明您需要什么? 我想加入 TimeScaleDB 数据源和 ElasticSearch 数据源并根据特定匹配获取记录并将数据可视化到 Grafana 中。时标数据库数据: 时标 DB 数据:Id:1 Device_id:2323 Id:2 Device_id:2324 弹性搜索数据:Device_id:2323 Device_id:2312 结果:Id:1 Device_id:2323 我觉得你可以试试 ZomboDB github.com/zombodb/zombodb 请提供足够的代码,以便其他人更好地理解或重现问题。 【参考方案1】:

Grafana 的Transformations feature 正是您要找的。​​p>

设置好两个数据源后,您可以创建一个面板并选择“混合”数据源。 为同一个面板编写两个查询,但确保返回的公共列的名称完全相同。 然后转到 Transform 选项卡(在 Query 旁边,在编辑器模式下的面板下方)。 尝试添加 Merge 转换(列表中的最后一个),这应该会自动选择公共列(确保您只有一个公共列)。 或外连接转换,您必须手动选择要连接的列。

【讨论】:

以上是关于Grafana - 我们如何加入来自 TimescaleDB 和 ElasticSearch 的数据?的主要内容,如果未能解决你的问题,请参考以下文章

普罗米修斯查询中来自grafana变量的多个值

如何在 Grafana 的 Timeseries 中绘制水平线

如何使用 slack/grafana 或任何其他自动化方式重新启动 docker 容器?

使用 Grafana 监控来自 tomcat 的 http 错误

如何在 Grafana 的 Hawkular 指标中监控应用程序的线程数?

使用来自 Kubernetes Metric 服务器的 PromQL (prometheus) 列出 Grafana 上的命名空间名称、命名空间年龄和状态