大致分以下几个步骤
- 编译打包源码,生成Skywalking-Agent
- 创建测试项目,整合skywalking源码
- 调整测试项目的vm启动参数,指定javaagent为步骤1生成的
Skywalking-Agent/skywalking-agent.jar
1. 编译打包Skywalking-Agent
通过执行以下指令,会发现项目中出现Skywalking-Agent目录
mvn clean -Dmaven.test.skip=true package -Pagent

这个目录中的文件就是Skywalking-agent的运行时文件目录。测试应用的javaAgent参数 指定的jar文件是这里的skywalking-agent.jar;拷贝此文件的绝对路径,之后的配置javaAgent参数的步骤中会使用。
2. 创建debug工程
调试skywalking 的Agent的工程有两种方式:
- 在Skywalking项目中添加测试项目的模块
- 在测试项目中,将整个skywalking项目做为一个模块添加进去,个人推荐
新建一个项目,然后通过【File】【New】【Module from Existing Sources】选择Skywalking项目所在的目录,

如上图所示操作完成后,项目的效果如下图所示

启动调试
测试工程的VM启动参数中指定skywalking项目中,skywalking-agent目录下的 skywalking-agent.jar目录


-javaagent:D:\work\apm-skywalking\skywalking-agent\skywalking-agent.jar
在待调试类中加入断点,比如Agent的入口类SkyWalkingAgent
的premain
方法中加入断点,idea中调试运行xxxTest工程,会看到执行到断点处。

调试注意事项
- 保证源码与skywalking-agent\skywalking-agent.jar 的一致,即修改了源码后,要通过执行
mvn package -Pagent
重新生成skywalking-agent.jar。
网友评论