在开发过程中,有一些端点(接口)并不需要去进行监控,比如Swagger相关的端点。这个时候我们就可以使用Skywalking提供的过滤插件来进行过滤。在skywalking_plugins中编写两个接口进行测试:
package com.itcast.skywalking_plugins.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class FilterController {
//此接口可以被追踪
@GetMapping("/include")
public String include(){
return "include";
}
//此接口不可被追踪
@GetMapping("/exclude")
public String exclude(){
return "exclude";
}
}
部署方式:
1、将 skywalking_plugins.jar 上传至 /usr/local/skywalking 目录下。
2、将agent中的 /agent/optional-plugins/apm-trace-ignore-plugin-6.5.0.jar 插件拷贝到
plugins目录中。
cd /usr/local/skywalking/apache-skywalking-apm-bin cp optional-plugins/apm-trace-ignore-plugin-6.5.0.jar plugins/apm-trace-ignore-plugin-6.5.0.jar
3、启动skywalking_plugins应用,等待启动成功。
java -javaagent:/usr/local/skywalking/apache-skywalking-apm-bin/agent/skywalking-agent.jar -Dskywalking.agent.service_name=skywalking_plugins -Dskywalking.trace.ignore_path=/exclude -jar skywalking_plugins-0.0.1-SNAPSHOT.jar &
注意:
这里添加-Dskywalking.trace.ignore_path=/exclude参数来标识需要过滤哪些请求,支持 Ant Path 表达式:
/path/* , /path/** , /path/?
- ? 匹配任何单字符
- * 匹配0或者任意数量的字符
- ** 匹配0或者更多的目录
4、调用接口,接口地址为:
http://IP地址:8088/exclude
http://IP地址:8088/include
5、在追踪中进行查看:
exclude接口已经被过滤,只有include接口能被看到。



