当前位置:网站首页>基于ck+redash构建MySQL慢日志+审计日志展示平台
基于ck+redash构建MySQL慢日志+审计日志展示平台
2022-08-03 18:19:00 【墨天轮】
1 背景
业务经常需要通过MySQL慢日志来排查SQL问题。需求主要是:让dba提供一段时间内慢日志明细和慢日志统计。
早期的处理方式是:登录数据库服务器,1)下载慢日志文件发给开发,作为明细;2)通过pt-query-digest命令,生成一段时间内的慢日志报表,作为统计;
随着业务线的扩展,管理的自建MySQL实例数量越来越多,业务主库和只读从库的数量达到200+。随之而来的,通过慢查询日志来解决业务问题的需求越来越多。
原来的处理方式太耽误时间,尤其碰到慢日志文件较大的时候(每天会对日志文件进行切割,但有的实例慢日志文件仍然很大)。
2 痛点&诉求
后来的解决方法是:通过rsyslog+kafka,将慢日志明细写入到ELK,开发可以通过数据库对应的主机名来筛选明细。
虽然kibana上可以定制可视化的查询(Visualize),以及将可视化查询通过看板(Dashboard)展示,但是有两个问题:1)定制工作量大;2)没办法实现慢查询统计功能,比如将select * from t1 where id=1 和 select * from t1 where id=2作为一个语句:select * from t1 where id=?来统计次数;
第二个解决方法是:利用https://github.com/hhyo/Archery自带的慢查询功能(pt-query-digest命令,需要把慢日志写入表中),但是问题是:1)改造工作量大;2)大量查询的话,可能会影响别的功能使用。
3 思路
后来有幸看到一篇文章:https://cloud.tencent.com/developer/article/1986852
开始研究clicktail(不再维护,用的人较少,但是能拿来用,有开发能力的大佬可以忽略。。。),https://github.com/Altinity/clicktail
clicktail介绍:https://altinity.com/blog/2018/3/12/clicktail-introduction
就是通过clicktail,将慢日志写入clickhouse,clickhouse展示慢查询统计和明细:https://www.percona.com/blog/2018/02/28/analyze-raw-mysql-query-logs-clickhouse/
4 架构
web展示的话,用的公司现有的redash(vue大佬可以忽略)。
链路就是: mysql+clicktail+clickhouse+redash
5 展示
明细和统计,是参考阿里云rds控制台上的功能搞的。
后面会抽时间将整个的部署都形成文章。
边栏推荐
- With the help of Kubernetes kubekey speed installation
- 我们为何看好投资 DAO?
- 借助kubekey极速安装Kubernetes
- Digital IC Handwriting - MCMM, WNS and TNS
- Shell编程案例
- 大佬,谁有空帮忙看下这个什么问题呢,我就读取MySQLsource print下,刚接触flink,
- Is OnePlus Ace worth buying?Use strength to interpret the power of performance
- Crack:WebKitX ActiveX and WebKitX VHX
- 货比四家 version tb1.63
- 使用安全浏览器将网页保存为pdf的方法步骤
猜你喜欢
走进通信:为什么4G信号满格,却上不了网呢
云GPU如何安装和启动VNC远程桌面服务?
TiFlash 计算层概览
rhel8.3 系统下修改有线网卡配置信息实现联网
mysql之数据库账户管理与优化
【白话模电2】二极管特性和分类
Share 14 JS functions you must know
Weekly recommended short video: In order to fill the gap of learning resources, the author specially wrote a book?
2021年数据泄露成本报告解读
在线监控机房内的UPS电源及运行环境,解决方案来了
随机推荐
Flask框架——项目可安装化
使用range-based for循环的注意事项
技术干货|如何将 Pulsar 数据快速且无缝接入 Apache Doris
图像传感第一章学习心得
87. (Home of cesium) cesium heat map (topography)
【HCIP】MPLS实验
多商户商城系统功能拆解21讲-平台端分销订单
ImportError: /lib/libgdal.so.26: undefined symbol: sqlite3_column_table_name
深度学习常用公式与命令总结(更新中)
tree命令:以树的形式列出目录中的文件
sys文件系统
Online monitoring of UPS power supply and operating environment in the computer room, the solution is here
rhel8.3 系统下修改有线网卡配置信息实现联网
爬虫之selenium
我们为何看好投资 DAO?
借助kubekey极速安装Kubernetes
关于vscode安装包下载太慢解决方法
【牛客在线OJ】-字符逆序
Big guy, who is free to help me to see what the problem is, I just read MySQL source print, and I just came into contact with flink.
VsCode预览Geojson数据