以某个表的数据监控为例子,说明创建一个MySQL数据监控的过程
打开页面:数据管理->数据源,点击新增按钮,弹出窗口,填写字段并保存。
- 服务地址为MySQL的jdbc链接地址
打开页面:数据管理->数据名,点击新增按钮,弹出窗口,填写字段并保存。
数据名在MySQL
场景可以理解为表名,主要为了维护时间字段
打开页面:监控管理->监控编辑。填入信息并保存,保存前可以先进行测试。
-
查询语句如下,表示查询某表的数据
select * from table1
-
根据选择的数据名的时间字段以及数值比较或同比比较报警规则,实际执行
sql
如下-- 查询数据条数 select count(*) from (select * from table1 where 1=1 and created_at>=? and created_at<?) -- 查询最新一条数据 select * from table1 where 1=1 and created_at>=? and created_at<? order by created_at desc limit 1
注意不要在查询语句里添加时间查询条件,因为时间需要在报警规则里设置,由程序自动附加上去
查询语句必须包含where
- 查询语句如下
SELECT * FROM alarm_log WHERE create_at > ADDDATE(now(), INTERVAL '-3' DAY) ORDER BY id DESC
任意可执行查询语句均可,可以各种join
都上,你随意。
注意表达式规则不需要配置查询时间段,所以需要你自己在语句里利用数据库自带的时间函数做时间限制
报警规则和Elasticsearch
数据监控无异
本例设置的报警模板如下,其中${db_name}
、${node_name}
为查询语句查询的列名
表最近${TIME_WINDOW}分钟内dbtree新增${NUMBER}个表信息。最近一条信息:
数据库名称: ${db_name}
节点名称: ${node_name}
配置完就可以进行测试,和保存运行了。 MySQL
还没有查询页面所以,默认没有查询短链接。