ApiBoot Logging
支持排除指定路徑不參與日誌的採集,當咱們的服務集成actuator
時,會不斷的重複調用內置的路徑致使大量採集到一些無關業務的日誌信息,固然這只是一個例子,集成其餘的第三方組件時也可能出現定時重複調用接口的場景。html
本章所使用的示例項目請訪問【修改ApiBoot Logging日誌採集的前綴】文章底部訪問源碼下載後導入idea
工具。java
ApiBoot Logging
提供了配置參數api.boot.logging.ignore-paths
,該配置參數的數據類型爲java.lang.String[]
,能夠使用,
逗號隔開配置多個忽略採集日誌
的路徑。git
修改application.yml
配置文件內容以下所示:web
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
路徑採集日誌。spring
導入idea
的源碼並無添加/user/info
路徑請求方法,下面咱們修改UserController
類以下所示:json
/** * 用戶信息 * /user/info * * @return */ @GetMapping(value = "/info") public String info() { return "this is user info"; }
使用Application
方式啓動本章源碼,經過curl
方式訪問/user/info
路徑,以下所示:api
➜ ~ curl http://localhost:8080/user/info this is user info
訪問成功後,查看控制檯並未發現有請求日誌輸出,證實了/user/info
路徑被排除了。bash
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
:app
做者我的 博客
使用開源框架 ApiBoot 助你成爲Api接口服務架構師