#挑战30天在头条写日记#
墨林码农专注分享开源项目, 精选开源社区技术干货,分享Github、Gitee上有趣、有价值的项目,一起学习,一起成长。
大家好,我是墨林,今天给大家推荐一款轻量级的springboot项目性能分析工具:koTime。
简介
koTime是一款对于springboot项目的性能分析工具,通过追踪调用链路的方式,以及项目中对应的运行时长快速定位系统的性能瓶颈。
koTime可以实时监听项目中的方法,统计系统的运行时长,项目提供调用链路的Web展示,以及可视化的追踪过程,还支持代码热更新和邮件预警机制。
功能
- 调用链路追踪:统计系统的平均耗时、最大耗时、最小耗时
- 异常追踪:统计系统异常所在的方法、异常消息、异常行
- 入参组合分析:统计系统组合参数以及耗时
- 耗时预警:统计系统的请求耗时情况,并邮件通知
- 热更新:系统更新不需要重启,实现热更新,可以进行线上更新代码
- 线程管理:可以对系统线程堆栈,线程状态进行管理
使用
- 引入依赖
<dependency>
<groupId>cn.langpy</groupId>
<artifactId>ko-time</artifactId>
<version>2.4.1</version>
</dependency>
- 配置:在application.properties文件中进行配置
ko-time.pointcut=execution(public * com.huoyo..*.*(..)) #需要监测的范围,是链路包含的范围,不仅仅是接口层,参考aop的@pointcut 或者左侧常见问题,另外需要排除final相关类。
- 访问:启动项目访问 /koTime 路径即可
截图
- 首页面板:首页有六个统计指标,分别是总接口数、延迟响应接口数、正常响应接口数、平均响应、最大响应、最小响应
- 接口列表:该列表展示的是监测到被请求过的接口,按照其平均响应时间倒序排列
点击每一个接口后会显示该接口的方法调用链路、各个方法的运行时间以及该方法是否发生了异常,方法节点可拖动
- 异常列表:异常列表以异常为切入点,并显示每个异常发生的位置
- 配置面板:配置面板有四项配置,可在不重启系统的情况下进行配置
结束语
几个简单的字符,就能创造出欢乐,
几个简单的号码,便能写出奇迹。
一个键盘,就能畅游世界,
一根网线,便能知晓天下。
创作不易,感谢大家的支持。后续也会分享更多的干货和技术资讯,您的阅读就是对小编的支持,再次感谢各位老铁!