Endpoint过滤即url忽略,有时可能希望忽略部分特殊 URL 的追踪,例如说,健康检查的 HTTP API及其他我们不需要关注的url如/eureka/**,/consul/**等等。为此SkyWalking 提供 trace-ignore-plugin 插件,可以实现忽略部分 URL 的追踪,具体步骤如下

一、agent配置

复制插件

skywalking 安装包下有个agent包(安装包结构可查看中的1.2),实地中需将agent复制到你的应用服务(就是你要监控服务的服务器)上,过滤需要trace-ignore-plugin 插件,该插件在 optional-plugins 目录下,是可选插件,所以我们需要复制到 plugins 目录下。命令行操作如下:

SkyWalking 之endpoint 过滤

 配置文件: 在agent/config/x下我创建一个 apm-trace-ignore-plugin.config 配置文件,默认情况下不存在,所以我们需要进行创建并配置(如我们忽略/eureka/**)。命令行操作如下:

SkyWalking 之endpoint 过滤

  • trace.ignore_path 配置项,设置忽略的 URL 路径,基于 Ant 风格路径表达式。
  • 这里,我们配置了读取环境变量 SW_AGENT_TRACE_IGNORE_PATH ,这样方便我们自定义

二、IDEA中使用

先看看没有添加SW_AGENT_TRACE_IGNORE_PATH配置时,具体如下图

SkyWalking 之endpoint 过滤

我们在浏览器中分别请求http://localhost:9100/sky/hellohttp://localhost:9100/sky/echo,我可以看到我监控面板上如下图

SkyWalking 之endpoint 过滤

 下面我们添加过滤参数SW_AGENT_TRACE_IGNORE_PATH=/sky/echo,如下图

SkyWalking 之endpoint 过滤

 我们在狂点请求http://localhost:9100/sky/hellohttp://localhost:9100/sky/echo,我查看我们的监控界面就不在有/sky/echo

SkyWalking 之endpoint 过滤

到此你就如意过滤掉了/sky/echo了! 

 

分类:

技术点:

相关文章: