百度了一圈又是没找到相关教程,那我继续首发吧
目标:
基于spring cloud gateway日志,快速构建网关仪表盘。可以实现对高频、慢请求、超慢请求、报错请求的聚合分析,同时可以看指定接口的耗时分布图。
下面开搞!
一、日志结构化
作此声明:以下3行日志经过了安全脱敏,所有认证信息均为二次生成,无任何安全隐患
需要将日志结构化保存到es中
我这里利用grok脚本解析日志(利用grok Debugger反复调试)
要注意的是,我认为path里的?参数传参应该被拿掉,这样更有利于后期的聚合分析,所以用了(?<path>[^? ]+)(?:\?[^ ]*)? 把问号后的字符省掉了
二、修改logstash脚本
在logstash/pipeline/logstash.conf 把配置改好,重启logstash服务
三、看板绘制
就差最后一步了,登录kibana页面,创建仪表盘
3.1 创建可视化
选择饼图,几个轻松的拖拉拽,ok
“URL访问次数占比”看板完成
再加个耗时阈值判断,我这里选的是大于2000ms,ok
“超过2秒的路径统计”看板完成
再来个报错前五的统计看板
根据项目实际情况写个筛选条件,再进行拖拉拽,完成!
耗时分布区间表,10s拖拽完成!
总结
最终耗时几十分钟即可完成适配自身业务的网关仪表盘
点击上图可以下钻
也可以看原始日志