mysql exporter怎么配置_mysqld_exporter的源码分析和定制化(单个mysqld_exporter监控多个数据库实例)...

mysqld_exporter是prometheus官方提供的用于监控mysql运行状态的exporter。其相关信息可以参考:https://github.com/prometheus/mysqld_exporter。

1. 配置

先看一下其配置方式。主要的配置内容分为两部分,一部分是监控目标mysql的连接信息,另一部分是exporter抓取的监控参数的设置。

首先是连接信息:

连接信息的设置方法有两种。第一种是通过环境变量设置,例如:

export DATA_SOURCE_NAME='user:password@(hostname:3306)/'./mysqld_exporter

另一种方法是通过配置文件进行设置。配置文件会在func parseMycnf()函数中被转化为与环境变量设置的格式相同。随后该设置将传入golang的db库并进行数据库连接。

对于两种设置的优先级,当环境变量存在(长度大于0)时,将不会对配置文件进行解析。

然后是exporter抓取的监控参数的设置:

这里用集合来表示监控参数的范围。首先exporter中利用scrapers常量记录了一个默认的采集范围集合A。

exporter也允许在exporter启动的时候,通过设置启动参数来设置采集范围B。

当集合B不存在时,集合A生效;当集合B存在时,集合B生效,集合A失效。

Prometheus在采集exporter的数据时,可以携带一个collect[]参数设定采集范围C。

当集合C不存在时,Prometheus最终的采集范围是A或者B(取决于哪个集合生效);当集合C存在时,Prometheus最终的采集范围

你可能感兴趣的:(mysql,exporter怎么配置)