2020-12-11 19:25:15 +08:00
2020-12-10 18:54:29 +08:00
2020-12-11 19:15:36 +08:00
2020-12-11 19:09:12 +08:00
2020-12-10 18:54:29 +08:00
2020-12-10 18:57:39 +08:00
2020-12-11 19:13:25 +08:00
2020-12-11 19:25:15 +08:00

koTime

介绍

koTime是一个springboot项目性能分析工具通过追踪方法调用链路以及对应的运行时长快速定位性能瓶颈

预览

优点:

  • 实时监听方法,统计运行时长
  • web展示方法调用链路瓶颈可视化追踪

缺点:

  • 仅支撑单体应用

使用教程

  1. 引入依赖 或者 下载发行版本
 <dependency>
    <groupId>cn.langpy</groupId>
    <artifactId>ko-time</artifactId>
    <version>1.1</version>
  </dependency>
  1. 配置信息

在application.yml中配置

spring.profiles.active=koTime
koTime.log.enable:false  # 是否开启控制输出默认false
koTime.log.language=chinese # 控制台输出语言english/chinese
koTime.time.threshold:800.0 # 时间阈值,用于前端展示,大于阈值显示红色,小于阈值显示绿色
  1. 新建一个类实现ComputeTimeHandlerInterface并在 @Pointcut 写入 需要监测的范围
@Component
@Aspect
public class RunTimeHandler implements ComputeTimeHandlerInterface {
    @Override
    @Pointcut("execution(* com.huoyo..*.*(..))")
    public void prog() {

    }
}

  1. 启动项目访问 /koTime 路径即可

比如:http://localhost:8080/koTime 如果项目自定义的contextpath访问如http://localhost:8080/xxx服务/koTime

可视化展示

1.接口调用统计

根据颜色判断需要优化的接口数,红色为待优化,绿色为正常

输入图片说明

2.接口列表总览

在列表中会显示该接口的运行耗时,如果为绿色则无需优化,如果为红色,需要详细查看问题所在

输入图片说明

3.调用详情

点开接口时,会显示该接口的调用链路以及运行时长

输入图片说明

版本说明

V1.0:基本功能 V1.1:接口统计 V1.2:添加日志、时间阈值可配置

Description
koTime是一个轻量级的springboot项目性能分析工具,通过方法调用链路追踪以及运行时长监控快速定位性能瓶颈,并进行可视化展示,还支持代码热更新与邮件预警! a springboot tool for tracing call graph,which can help you find method's performances easily.
Readme LGPL-2.1 11 MiB
Languages
Java 58.6%
HTML 23.8%
CSS 12.5%
JavaScript 5.1%