如何使用 Prometheus 查询不同的 mySQL 数据库进行业务监控

Posted

技术标签:

【中文标题】如何使用 Prometheus 查询不同的 mySQL 数据库进行业务监控【英文标题】:How to query different mySQL databases with Prometheus for business monitoring 【发布时间】:2020-11-20 04:49:13 【问题描述】:

是否可以用prometheus监控不同mysql数据库中的业务数据?

我想在 grafan 云中创建一个带有警报系统的仪表板,并从 prometheus 获取数据。为了将 prometheus 连接到 mysql,我需要一个 sql_exporter。

但是我应该在哪里定义我的业务监控查询?

这种方法有意义吗?如果没有,我还能做什么?

谢谢

【问题讨论】:

【参考方案1】:

是的,您可以使用 sql-agent、prometheus-sql、prometheus 和 grafana。

使用 sql-agent,您可以获取要监控的查询,格式化为 JSON,并在数据库后端执行它们。从那里您可以使用 prometheus-sql 查询您的 SQL 数据库并将这些指标解析为 Prometheus。在 Prometheus 中,您可以为查询定义警报。 Grafana 用于可视化。

如果您的数据库位于不同的服务器中,请将 prometheus-sql 安装到每个服务器并从 Prometheus 定位它们。

【讨论】:

以上是关于如何使用 Prometheus 查询不同的 mySQL 数据库进行业务监控的主要内容,如果未能解决你的问题,请参考以下文章

prometheus如何调取数据

云原生系列之使用prometheus监控redis集群实战

如何在另一个 Prometheus 查询中引用查询值

Grafana + Prometheus 如何在查询指标中使用正则表达式?

prometheus问题赏析-填坑的心路历程

Grafana+prometheus监控体系实践