前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ApiBoot Logging忽略路径不进行采集日志

ApiBoot Logging忽略路径不进行采集日志

作者头像
恒宇少年
发布2019-10-29 17:23:59
4740
发布2019-10-29 17:23:59
举报

ApiBoot Logging支持排除指定路径不参与日志的采集,当我们的服务集成actuator时,会不断的重复调用内置的路径导致大量采集到一些无关业务的日志信息,当然这只是一个例子,集成其他的第三方组件时也可能出现定时重复调用接口的场景。

创建示例项目

本章所使用的示例项目请访问【修改ApiBoot Logging日志采集的前缀】文章底部访问源码下载后导入idea工具。

配置排除路径

ApiBoot Logging提供了配置参数api.boot.logging.ignore-paths,该配置参数的数据类型为java.lang.String[],可以使用,逗号隔开配置多个忽略采集日志的路径。

修改application.yml配置文件内容如下所示:

代码语言:javascript
复制
api:
  boot:
    # ApiBoot Logging 相关配置
    logging:
      # 修改采集日志的前缀
      logging-path-prefix: /user/**,/order/**
      # 控制台打印日志
      show-console-log: true
      # 美化控制台打印的日志
      format-console-log-json: true
      # 排除/user/info路径不进行采集日志
      ignore-paths: /user/info

在上面配置中排除了/user/info路径采集日志。

运行测试

导入idea的源码并没有添加/user/info路径请求方法,下面我们修改UserController类如下所示:

代码语言:javascript
复制
/**
  * 用户信息
  * /user/info
  *
  * @return
  */
@GetMapping(value = "/info")
public String info() {
  return "this is user info";
}

使用Application方式启动本章源码,通过curl方式访问/user/info路径,如下所示:

代码语言:javascript
复制
➜ ~ curl http://localhost:8080/user/info
this is user info

访问成功后,查看控制台并未发现有请求日志输出,证明了/user/info路径被排除了。

敲黑板,划重点

api.boot.logging.ignore-paths配置参数与api.boot.logging.logging-path-prefix可以组合使用,可以进行重叠,排除的路径是在org.minbox.framework.logging.client.interceptor.web.LoggingWebInterceptor#checkIgnore方法内进行判断,支持Ant风格路径过滤。

本章源码

本篇文章示例源码可以通过以下途径获取,目录为SpringBoot2.x/modify-apiboot-logging-collection-prefix

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.10.29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 创建示例项目
  • 配置排除路径
  • 运行测试
  • 敲黑板,划重点
  • 本章源码
相关产品与服务
日志服务
日志服务(Cloud Log Service,CLS)是腾讯云提供的一站式日志服务平台,提供了从日志采集、日志存储到日志检索,图表分析、监控告警、日志投递等多项服务,协助用户通过日志来解决业务运维、服务监控、日志审计等场景问题。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档