gradle引入logbook相关配置项:

compile('org.zalando:logbook-spring-boot-starter:1.13.0') {exclude group: 'org.zalando', module: 'logbook-json'}

代码层面无侵入,只需要加上logbook的配置即可

基础配置如下

logbook.format.style = http
logbook.write.level=info
logging.level.org.zalando.logbook = trace
#以下为增值配置,上面三个加上即可实现
logbook.write.max-body-size=5000
logbook.write.chunk-size=5000
logbook.obfuscate.headers = app-user
logbook.exclude=/swagger-resources/**,/,/health,/favicon.ico,/error,/swagger-ui.html

增加上述配置之后就可以看到,请求的入参、出参都按照logbook的格式进行输了,干净又卫生!

Logbook 配置项

logbook.format.style各配置效果

logbook.format.style= curl

curl -v -X POST 'http://localhost:9013/ccapi/work/getWorkOrderList' -H 'accept: application/json;charset=UTF-8' -H 'accept-encoding: gzip, deflate, br' -H 'accept-language: zh-CN,zh;q=0.9' -H 'connection: keep-alive' -H 'content-length: 105' -H 'content-type: application/json' -H 'host: localhost:9013' -H 'origin: http://localhost:9013' -H 'referer: http://localhost:9013/swagger-ui.html' -H 'sec-ch-ua: "Google Chrome";v="93", " Not;A Brand";v="99", "Chromium";v="93"' -H 'sec-ch-ua-mobile: ?0' -H 'sec-ch-ua-platform: "macOS"' -H 'sec-fetch-dest: empty' -H 'sec-fetch-mode: cors' -H 'sec-fetch-site: same-origin' -H 'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36' --data-binary'{"end_time": "2021-12-31 23:59:59","page": 0,"rows": 10,"start_time": "2021-10-01 00:00:00"}’

logbook.format.style= json

{"origin":"remote","type":"request","correlation":"957da04c4ea7ffbc","protocol":"HTTP/1.1","remote":"0:0:0:0:0:0:0:1","method":"POST","uri":"http://localhost:9013/ccapi/work/getWorkOrderList","headers":{"accept":["application/json;charset=UTF-8"],"accept-encoding":["gzip, deflate, br"],"accept-language":["zh-CN,zh;q=0.9"],"connection":["keep-alive"],"content-length":["105"],"content-type":["application/json"],"host":["localhost:9013"],"origin":["http://localhost:9013"],"referer":["http://localhost:9013/swagger-ui.html"],"sec-ch-ua":["\"Google Chrome\";v=\"93\", \" Not;A Brand\";v=\"99\", \"Chromium\";v=\"93\""],"sec-ch-ua-mobile":["?0"],"sec-ch-ua-platform":["\"macOS\""],"sec-fetch-dest":["empty"],"sec-fetch-mode":["cors"],"sec-fetch-site":["same-origin"],"user-agent":["Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36"]},"body":{"end_time":"2021-12-31 23:59:59","page":0,"rows":10,"start_time":"2021-10-01 00:00:00"}}

logbook.format.style= http

完全按http格式输出日志

POST http://localhost:9013/ccapi/work/getWorkOrderList HTTP/1.1
sec-fetch-mode: cors
referer: http://localhost:9013/swagger-ui.html
content-length: 105
sec-fetch-site: same-origin
accept-language: zh-CN,zh;q=0.9
origin: http://localhost:9013
accept: application/json;charset=UTF-8
sec-ch-ua: "Google Chrome";v="93", " Not;A Brand";v="99", "Chromium";v="93"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "macOS"
host: localhost:9013
content-type: application/json
connection: keep-alive
accept-encoding: gzip, deflate, br
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36
sec-fetch-dest: empty{"end_time": "2021-12-31 23:59:59","page": 0,"rows": 10,"start_time": "2021-10-01 00:00:00"
}

logbook.format.style= splunk

origin=remote type=request correlation=cb441ddf6c94dcc1 protocol=HTTP/1.1 remote=0:0:0:0:0:0:0:1 method=POST uri=http://localhost:9013/ccapi/work/getWorkOrderList headers={accept=[application/json;charset=UTF-8], accept-encoding=[gzip, deflate, br], accept-language=[zh-CN,zh;q=0.9], connection=[keep-alive], content-length=[105], content-type=[application/json], host=[localhost:9013], origin=[http://localhost:9013], referer=[http://localhost:9013/swagger-ui.html], sec-ch-ua=["Google Chrome";v="93", " Not;A Brand";v="99", "Chromium";v="93"], sec-ch-ua-mobile=[?0], sec-ch-ua-platform=["macOS"], sec-fetch-dest=[empty], sec-fetch-mode=[cors], sec-fetch-site=[same-origin], user-agent=[Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36]} body={"end_time": "2021-12-31 23:59:59","page": 0,"rows": 10,"start_time": "2021-10-01 00:00:00"}

logbook.write.max-body-size=10

最大body长度效果如下,超过10的部分会按…显示(请求 返回的body都会受这个配置影响)

POST http://localhost:9013/ccapi/work/getWorkOrderList HTTP/1.1
sec-fetch-mode: cors
referer: http://localhost:9013/swagger-ui.html
content-length: 105
sec-fetch-site: same-origin
accept-language: zh-CN,zh;q=0.9
origin: http://localhost:9013
accept: application/json;charset=UTF-8
sec-ch-ua: "Google Chrome";v="93", " Not;A Brand";v="99", "Chromium";v="93"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "macOS"
host: localhost:9013
content-type: application/json
connection: keep-alive
accept-encoding: gzip, deflate, br
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36
sec-fetch-dest: empty{"end_t...

logbook.obfuscate.headers = app-user

混淆请求中特定的key

这里支持多个,用逗号分隔

效果类似打码,原始的header内容变成了xxx

GET http://localhost:9013/ccapi/maicai/getUserInfo?mobile=15250502950 HTTP/1.1
sec-fetch-mode: cors
referer: http://localhost:9013/swagger-ui.html
sec-fetch-site: same-origin
accept-language: zh-CN,zh;q=0.9
app-user: XXX
accept: application/json;charset=UTF-8
sec-ch-ua: "Google Chrome";v="93", " Not;A Brand";v="99", "Chromium";v="93"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "macOS"
host: localhost:9013
connection: keep-alive
accept-encoding: gzip, deflate, br
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36sec-fetch-dest: empty

logbook.exclude=/ccapi/maicai/countAdvice,/ccapi/work/getWorkOrderList

配置exclude之后 对应的url请求进来不会触发logbook日志记录

-------------------------

logbook.write.chunk-size = 100

配单条日志长度,超过长度会自动进行拆分,可以防止单条消息过长 将消息进行拆分。

{"msg":"请求成功","code":0,"timestamp":"2021-11-16 20:[cc-admin-service-0ac1e87a-454740-33085] 40:12","success":true,"data":{"name":"lindaman","mobile":"15250502950","id":"5b45bd61c5702e77788b538[cc-admin-service-0ac1e87a-454740-33085] 5","status_str":"正常","sex":3,"im_uid":"2093996","role_str":"用户","point_total":"205"},"exec_time":[cc-admin-service-0ac1e87a-454740-33085] 1050}

Springboot接入logbook以及logbook配置含义相关推荐

  1. springboot启动报错Logbook

    springboot启动报错 APPLICATION FAILED TO START Description: Field logbookHttpRequestInterceptor in com.j ...

  2. SpringBoot接入支付宝支付API

    springboot接入支付宝api(网页或单独支付二维码) 更多内容可以参考支付宝开放平台:支付宝开放平台 (alipay.com) 支付宝沙箱:沙箱环境 - 支付宝文档中心 (alipay.com ...

  3. (转) SpringBoot接入两套kafka集群

    转自: SpringBoot接入两套kafka集群 - 风小雅 - 博客园引入依赖 compile 'org.springframework.kafka:spring-kafka' 第一套kafka配 ...

  4. Cat3.0.0监控本地部署+springboot接入cat例子

    Cat监控本地部署 说明 目标 前提 cat.war和sql脚本 源码下载 编译 sql脚本----mysql这里就配置完了 部署cat springboot程序接入cat win10本地配置 my- ...

  5. 微信开发:springboot接入微信公众号

    微信公众号现今已经成为我们日常生活中获取信息的一个重要途径,今天这篇博客主要是介绍如何用springboot接入微信的公众号.微信的公众号分三种:订阅号,一般个人使用,很多功能受限:服务号,个人与企业 ...

  6. SpringBoot 接入支付宝支付-证书模式

    SpringBoot 接入支付宝支付-证书模式 满足一下条件 1.注册支付宝商户,实名认证,获取APPID 2.申请支付宝公钥证书 3.有些复杂具体还是按照官方引导进行操作 产品大全 https:// ...

  7. springboot接入华为微服务引擎CSE全过程及后续遇到的问题一览

    最近有项目需求把现有的单体应用,springboot接入华为的微服务引擎CSE,这里列出我遇到的问题,以及解决方案. 1.华为CSE微服务引擎的POM文件引入 问题:POM文件无法找到对应的华为CSE ...

  8. SpringBoot入门_搭建及配置环境(eclipse || Spring ToolS)

    r如果没有开发软件那就可以点击链接下载 Springboot开发工具: 1.eclipse配置springboot环境 help-Eclipsemarketplace--在find中查找springb ...

  9. configurationproperties_【Springboot】注解@ConfigurationProperties让配置整齐而简单

    1 简介 前面我们用一篇文章<[Spring]只想用一篇文章记录@Value的使用,不想再找其它了(附思维导图)>详细讲解了在Spring中如何使用@Value来实现我们对配置的需求,它功 ...

最新文章

  1. linux 新建用户和权限分配
  2. 关于linux文件挂载(一)
  3. 【今晚7点半】:华为云视频直播在各细分场景的体验指标优化实践
  4. ssas 层次结构_分析服务(SSAS)多维设计技巧–关系和层次结构
  5. 判断一个单链表是否有环及环的链接点
  6. 使用frp通过ssh访问公司内网机器
  7. 简要说明python的缩进规则_关于python的缩进规则的知识点详解
  8. 2022华为杯数学建模研赛选题建议和思路分析
  9. visio 2003 怎么样画括号
  10. 关于Oracle的PARALLEL MAX SEVERS参数
  11. 4.16 期货每日早盘操作建议
  12. 文本相似(汉明距离)
  13. I don't know what to say 事件的 NPM 包中奖名单,有你在用的吗?
  14. 深藏不漏!.cc域名接连高价成交!最高突破6位数!
  15. 量子计算机 儿童画,星汉璀璨只见你
  16. 再谈搜索已死,推荐上位
  17. Elasticsearch教程---高亮搜索(十二)
  18. 3A简介(持续更新)
  19. wechat4j获取用户昵称乱码修复
  20. client?0edb:161 [WDS] Errors while compiling. Reload prevented.

热门文章

  1. 台式计算机 设计,家用台式电脑桌最新设计方案,美过电脑的电脑桌设计
  2. 动卡空间显示服务器开小差,大话西游2游戏空间离奇开小差 技术员驾到神速修复...
  3. 用R做中文LDA主题模型可视化分析
  4. 浏览器精确定位 调用高德地图定位
  5. 小米手机调试出现DELETE_FAILED_INTERNAL_ERROR Error while Installing APKs
  6. 音质好的蓝牙耳机推荐,分享四款音质不错的蓝牙耳机
  7. 138.(前端)数据统计显示图表——vue子组件的挂载与echarts基本效果实现
  8. 装逼篇 | Python制作抖音超火的九宫格视频
  9. 小白测试系列:badboy默认浏览器修改
  10. stringtokenizer java_基于Java中的StringTokenizer类详解(推荐)