【Java】Logbook優化接口調用日志輸出,優雅!

logbook 簡介

很多人可能沒有接觸過 logbook,但它的確是一個很好用的日志框架。引用官網的介紹

Logbook 是一個可擴展的 Java 庫,可以為不同的客戶端和服務器端技術啟用完整的請求和響應日志記錄。它通過以下方式滿足了特殊需求:

  • 允許 Web 應用程序開發人員記錄應用程序接收或發送的任何 HTTP 流量 ,這意味著只要是 HTTP 請求它都可以選擇記錄日志
  • 以一種易于持久化和分析的方式。這對于傳統的日志分析、滿足審計要求或調查個別歷史流量問題非常有用。

具體介紹可以參考 鏈接: logbook 官網

使用logbook

這邊主要講解logbookspringBoot2的整合
logbook 官方提供了 logbook-spring-boot-starter

簡單使用

引入依賴

<!--按照官方要求 為了 Spring 5 / Spring Boot 2 向后兼容,需要導入如下依賴-->
<dependency><groupId>org.zalando</groupId><artifactId>logbook-servlet</artifactId><version>3.9.0</version><classifier>javax</classifier>
</dependency>
<dependency><groupId>org.zalando</groupId><artifactId>logbook-spring-boot-starter</artifactId><version>3.9.0</version>
</dependency>

添加配置

logging:level:org.zalando.logbook: TRACE

寫個測試接口就可以看到日志了

{"origin": "remote", //remote 代表遠程請求,local 代表本地發出的請求 例如 Feign"type": "request","correlation": "b2b2b8e449d7b650", //請求唯一id"protocol": "HTTP/1.1","remote": "0:0:0:0:0:0:0:1","method": "GET","uri": "http://localhost:8080/consumer","headers": {"accept": ["text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9"],"accept-encoding": ["gzip, deflate, br"],"accept-language": ["zh-CN,zh;q=0.9"],"cache-control": ["max-age=0"],"connection": ["keep-alive"],"host": ["localhost:8080"],//...省略}
}

選擇日志風格

logbook 提供了多種日志風格,默認是 JSON ,在 application.yml 中通過以下配置選擇

logbook:format:style: json #默認值,可選值還有 curl、http、splunk

轉載: 原文

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/39383.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/39383.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/39383.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

計算機網絡期末復習4(武夷學院版)

第四章 網絡層 1、網際協議IP以及配套協議&#xff08;書P119&#xff09; 網際協議&#xff08;IP&#xff09;&#xff1a;IP協議是網絡層的核心協議&#xff0c;負責數據包的編址和路由。它定義了數據包的格式和處理規則。 配套協議&#xff1a;地址解析協議ARP&#xf…

【工具】VS Code使用global插件實現代碼跳轉

&#x1f41a;作者簡介&#xff1a;花神廟碼農&#xff08;專注于Linux、WLAN、TCP/IP、Python等技術方向&#xff09;&#x1f433;博客主頁&#xff1a;花神廟碼農 &#xff0c;地址&#xff1a;https://blog.csdn.net/qxhgd&#x1f310;系列專欄&#xff1a;善假于物&#…

粵港聯動,北斗高質量國際化發展的重要機遇

今年是香港回歸27周年&#xff0c;也是《粵港澳大灣區發展規劃綱要》公布5周年&#xff0c;5年來各項政策、平臺不斷為粵港聯動增添新動能。“十四五”時期的粵港澳大灣區&#xff0c;被國家賦予了更重大的使命&#xff0c;國家“十四五”《規劃綱要》提出&#xff0c;以京津冀…

時序約束(二): input delay約束和output delay約束

一、input delay約束 在千兆以太網數據收發項目中&#xff0c;RGMII的數據輸入方式為DDR&#xff0c;源同步輸入方式&#xff0c;可以用之前提到的分析模型進行約束。 在時序約束原理中我們提到&#xff0c;input delay約束的就是發射沿lunch到數據有效的延時&#xff0c;根據…

Vue 3中 <script setup> 與生命周期鉤子函數的詳細解析

Vue 3中 <script setup> 與生命周期鉤子函數的詳細解析 Vue 3 引入了 <script setup> 語法糖&#xff0c;這是一種簡化和集成組件邏輯的新方式。盡管 <script setup> 簡化了組件的編寫&#xff0c;但仍然可以利用 Vue 提供的生命周期鉤子函數來管理組件的生…

【光伏開發】光伏項目開發流程

光伏項目作為可再生能源領域的重要組成部分&#xff0c;其開發過程涉及多個環節&#xff0c;從項目初期的可行性研究到后期的運營維護&#xff0c;每一步都至關重要。本文將按照項目確認、前期階段、中期階段、后期階段的順序&#xff0c;詳細介紹光伏項目的開發流程。 一、項…

Rust 基礎教程

Rust 編程語言教程 Rust是一門注重安全、并發和性能的系統編程語言。本文將從Rust的基本語法、常用功能到高級特性&#xff0c;詳細介紹Rust的使用方法。 目錄 簡介環境配置基礎語法 變量和常量數據類型函數控制流 所有權和借用 所有權借用 結構體和枚舉 結構體枚舉 模塊和包…

一文搞懂 java 線程池:基礎知識

你好&#xff0c;我是 shengjk1&#xff0c;多年大廠經驗&#xff0c;努力構建 通俗易懂的、好玩的編程語言教程。 歡迎關注&#xff01;你會有如下收益&#xff1a; 了解大廠經驗擁有和大廠相匹配的技術等 希望看什么&#xff0c;評論或者私信告訴我&#xff01; 文章目錄 …

Linux:網絡基礎1

文章目錄 前言1. 協議1.1 為什么要有協議&#xff1f;1.2 什么是協議&#xff1f; 2. 網絡2.1 網絡通信的問題2.2 網絡的解決方案——網絡的層狀結構2.3 網絡和系統的關系2.4 網絡傳輸基本流程2.5 簡單理解IP地址2.6 跨網絡傳輸 總結 前言 在早期的計算機發展中&#xff0c;一開…

【云計算】阿里云、騰訊云、華為云平臺數據庫對比

目錄 一、云數據庫關鍵信息調研對比 二、詳細功能 1、阿里云RDS 2、騰訊云RDS 3、華為云RDS 一、云數據庫關鍵信息調研對比 云平臺支持數據庫部署對比支持功能備注阿里云 Mysql、Postgresql等 特有數據庫&#xff1a;PolarDB&#xff0c;適配mysql 基礎-單節點賬號管…

實現漸變字體的方案

需要注意&#xff0c;這個切圖是把一整塊&#xff0c;都切出來做的。所以需要用span&#xff0c;不能是div 還有描邊的話&#xff0c;scale會有邊距縮放的問題&#xff0c;描邊就用font weight 來實現 style{{ background: "var(--Linear, linear-gradient(96deg, #fff…

【華為戰報】5月、6月HCIP考試戰報!

華為認證&#xff1a;HCIA-HCIP-HCIE 點擊查看&#xff1a; 【華為戰報】4月 HCIP考試戰報&#xff01; 【華為戰報】2月、3月HCIP考試戰報&#xff01; 【華為戰報】11月份HCIP考試戰報&#xff01; 【HCIE喜報】HCIE備考2個月絲滑通關&#xff0c;考試心得分享&#xff…

Python序列化和反序列化

一.序列化和反序列化 在Python中&#xff0c;序列化&#xff08;Serialization&#xff09;和反序列化&#xff08;Deserialization&#xff09;是處理對象數據的過程&#xff0c;主要用于對象的存儲或網絡傳輸。 序列化&#xff08;Serialization&#xff09; 序列化是將Pyth…

7.x86游戲實戰-C++實現跨進程讀寫-跨進程寫內存

免責聲明&#xff1a;內容僅供學習參考&#xff0c;請合法利用知識&#xff0c;禁止進行違法犯罪活動&#xff01; 本次游戲沒法給 內容參考于&#xff1a;微塵網絡安全 上一個內容&#xff1a;6.x86游戲實戰-C實現跨進程讀寫-通過基址讀取人物狀態標志位 上一個內容通過基…

深層神經網絡

深層神經網絡 深層神經網絡 深度神經網絡&#xff08;Deep Neural Networks&#xff0c;DNN&#xff09;可以理解為有很多隱藏層的神經網絡&#xff0c;又被稱為深度前饋網絡&#xff08;DFN&#xff09;&#xff0c;多層感知機&#xff08;Multi-Layer perceptron&#xff0c…

ghost恢復?電腦文件恢復如何操作?電腦數據恢復工具!5款!

在數字化時代&#xff0c;電腦數據的價值日益凸顯。然而&#xff0c;數據丟失、誤刪、系統崩潰等問題時有發生&#xff0c;給個人和企業帶來巨大損失。本文將為您詳細介紹Ghost恢復方法&#xff0c;同時推薦五款高效的電腦數據恢復工具&#xff0c;助您輕松應對數據丟失的困擾。…

使用歸檔實用工具怎么打不開 mac上好用的解壓軟件 歸檔實用工具打不開怎么回事 mac 歸檔實用工具 蘋果電腦好用的壓縮軟件有哪些

Mac系統自帶的 “歸檔實用工具”&#xff0c;集成在系統右鍵菜單中&#xff0c;包含了文件壓縮和壓縮包解壓功能。很多mac小伙伴會發現有些文件使用歸檔實用工具打不開。由于專利和軟件開源問題&#xff0c;該工具目前僅支持ZIP格式的壓縮和解壓。同時&#xff0c;對于一些在Wi…

深入探討數據結構:基礎理論與應用實踐

前言 數據結構是計算機科學的重要組成部分&#xff0c;是編程與算法設計的基礎。本文將系統地介紹數據結構的基礎概念、常見類型、具體實現及其在實際開發中的應用&#xff0c;幫助讀者深入理解這一核心領域。 一、數據結構的基本概念 數據結構指的是計算機中數據的組織、管…

推廣旅游卡項目,一個月創收十幾萬,為何說旅游卡項目堪稱盈利利器?

推廣旅游卡項目&#xff0c;一月個創收十幾萬&#xff0c;為何說旅游卡項目堪稱盈利利器&#xff1f; 其精髓恰在于那十六字真言&#xff1a;即時收益&#xff0c;高額利潤&#xff0c;操作簡便&#xff0c;粉絲友好。接下來&#xff0c;我將從推廣人員的視角&#xff0c;為您…

Microsoft SQL Server 2019安裝和設置用戶密碼

1、免費下載兩個安裝包 SQL2019-SSEI-Dev 地址:https://www.microsoft.com/en-us/sql-server/sql-server-downloads SSMS-Setup-CHS 地址:https://aka.ms/ssmsfullsetup 安裝具體不在闡述了&#xff0c;可以參考我這篇文章&#xff1a;SQL Server 2019安裝詳細教程 2、以W…