




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第springboot整合log4j的踩坑實戰(zhàn)記錄目錄1、依賴添加1.1、添加依賴1.2、剔除依賴2、配置日志2.1、日志打印記錄2.2、指定配置文件補(bǔ)充:log4j調(diào)優(yōu)和注意事項總結(jié)
1、依賴添加
1.1、添加依賴
需要引入log4j的依賴支持,推薦自己確定使用的版本。
dependency
groupIdorg.apache.logging.log4j/groupId
artifactIdlog4j-to-slf4j/artifactId
version2.11.2/version
/dependency
1.2、剔除依賴
springboot默認(rèn)自己內(nèi)部添加了對日志的支持,需要將其全部剔除掉,不然會影響log4j的依賴使用。
dependency
groupIdorg.springframework.boot/groupId
artifactIdspring-boot-starter-logging/artifactId
exclusions
exclusion
groupId*/groupId
artifactId*/artifactId
/exclusion
/exclusions
/dependency
2、配置日志
2.1、日志打印記錄
根據(jù)自己的需求進(jìn)行相關(guān)的配置,這里需要注意的是使用xml文件進(jìn)行配置,使用properties有坑沒爬起來,文件名自定義,沒有啥要求,都會在配置文件中進(jìn)行指定的。
xmlversion="1.0"encoding="UTF-8"
configurationscan="true"scanPeriod="10seconds"
contextNamebeordie/contextName
propertyname="path"value="E:\file\javalearn\blog\src\main\resources\logs"/
conversionRuleconversionWord="clr"converter/
conversionRuleconversionWord="wex"converter/
conversionRuleconversionWord="wEx"converter/
propertyname="CONSOLE_LOG_PATTERN"value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-ddHH:mm:ss.SSS}){faint}%clr(${LOG_LEVEL_PATTERN:-%5p})%clr(${PID:-}){magenta}%clr(---){faint}%clr([%15.15t]){faint}%clr(%-40.40logger{39}){cyan}%clr(:){faint}%m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/
appendername="CONSOLE"
filter
levelinfo/level
/filter
encoder
Pattern${CONSOLE_LOG_PATTERN}/Pattern
charsetUTF-8/charset
/encoder
/appender
appendername="DEBUG_FILE"
file${path}/debug.log/file
encoder
pattern%d{yyyy-MM-ddHH:mm:ss.SSS}[%thread]%-5level%logger{50}-%msg%n/pattern
charsetUTF-8/charset
/encoder
rollingPolicy
fileNamePattern${log}/debug/log-debug-%d{yyyy-MM-dd}.%i.log/fileNamePattern
timeBasedFileNamingAndTriggeringPolicy
maxFileSize100MB/maxFileSize
/timeBasedFileNamingAndTriggeringPolicy
maxHistory15/maxHistory
/rollingPolicy
filter
leveldebug/level
onMatchACCEPT/onMatch
onMismatchDENY/onMismatch
/filter
/appender
appendername="INFO_FILE"
file${log}/info.log/file
encoder
pattern%d{yyyy-MM-ddHH:mm:ss.SSS}[%thread]%-5level%logger{50}-%msg%n/pattern
charsetUTF-8/charset
/encoder
rollingPolicy
fileNamePattern${log}/info/log-info-%d{yyyy-MM-dd}.%i.log/fileNamePattern
timeBasedFileNamingAndTriggeringPolicy
maxFileSize100MB/maxFileSize
/timeBasedFileNamingAndTriggeringPolicy
maxHistory15/maxHistory
/rollingPolicy
filter
levelinfo/level
onMatchACCEPT/onMatch
onMismatchDENY/onMismatch
/filter
/appender
appendername="WARN_FILE"
file${log}/warn.log/file
encoder
pattern%d{yyyy-MM-ddHH:mm:ss.SSS}[%thread]%-5level%logger{50}-%msg%n/pattern
charsetUTF-8/charset
/encoder
rollingPolicy
fileNamePattern${log}/warn/log-warn-%d{yyyy-MM-dd}.%i.log/fileNamePattern
timeBasedFileNamingAndTriggeringPolicy
maxFileSize100MB/maxFileSize
/timeBasedFileNamingAndTriggeringPolicy
maxHistory15/maxHistory
/rollingPolicy
filter
levelwarn/level
onMatchACCEPT/onMatch
onMismatchDENY/onMismatch
/filter
/appender
appendername="ERROR_FILE"
file${log}/error.log/file
encoder
pattern%d{yyyy-MM-ddHH:mm:ss.SSS}[%thread]%-5level%logger{50}-%msg%n/pattern
charsetUTF-8/charset
/encoder
rollingPolicy
fileNamePattern${log}/error/log-error-%d{yyyy-MM-dd}.%i.log/fileNamePattern
timeBasedFileNamingAndTriggeringPolicy
maxFileSize100MB/maxFileSize
/timeBasedFileNamingAndTriggeringPolicy
maxHistory15/maxHistory
/rollingPolicy
filter
levelERROR/level
onMatchACCEPT/onMatch
onMismatchDENY/onMismatch
/filter
/appender
springProfilename="dev"
loggername="com.beordie"level="debug"/
/springProfile
rootlevel="info"
appender-refref="CONSOLE"/
appender-refref="DEBUG_FILE"/
appender-refref="INFO_FILE"/
appender-refref="WARN_FILE"/
appender-refref="ERROR_FILE"/
/root
/configuration
2.2、指定配置文件
還需要在springboot的項目配置文件中進(jìn)行配置的指定。
logging:
config:classpath:log4j.xml
到這里完成對日志的整體配置,啟動項目通過下面語句拿到日志對象即可進(jìn)行日志的打印輸出。
privatefinalLoggerLOGGING=LoggerFactory.getLogger(ArticleController.class);
補(bǔ)充:log4j調(diào)優(yōu)和注意事項
日志模式-同步/異步
log4j2提供了AsyncAppender和AsyncLogger以及全局異步,開啟方式如下:
同步模式:默認(rèn)配置即為同步模式,即沒有使用任何AsyncAppender和AsyncLogger。全局異步:配置按照同步方式配,通過添加jvm啟動參數(shù)即可開啟全局異步,無需修改配置和應(yīng)用?;旌袭惒剑菏褂卯惒絃ogger和同步Logger的混合配置,且不開啟全局異步,即Logger配置中部分AsyncLogger,部分Logger。
日志模式使用注意事項:
如果使用異步,建議使用AsyncLogger實現(xiàn)而不是AsyncAppender。如果使用同步,AsyncLogger、AsyncApp
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)業(yè)設(shè)施確權(quán)管理制度
- 醫(yī)院食堂收費(fèi)管理制度
- 工作目標(biāo)責(zé)任管理制度
- 軟件測試報告的寫作技巧試題及答案
- 醫(yī)院職工流動管理制度
- 揭秘2025年軟件測試考試中的重點難點試題及答案
- 員工意外保險管理制度
- 工程管理貨物管理制度
- 定西市社??ü芾碇贫?/a>
- 測試數(shù)據(jù)的生成與管理技巧試題及答案
- 2025-2030年中國緩釋和和控釋肥料行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 衛(wèi)生法律法規(guī)的試題及答案
- 2025年廣東省廣州市越秀區(qū)中考物理一模試卷(含答案)
- 2025屆湖北省黃岡市黃州中學(xué)高考生物三模試卷含解析
- 砌磚理論考試題及答案
- 人格性格測試題及答案
- 2025-2030年中國電子變壓器市場運(yùn)行前景及投資價值研究報告
- 2024年廣東省廣州市越秀區(qū)中考二模數(shù)學(xué)試題(含答案)
- 2025屆各地名校4月上旬高三語文聯(lián)考作文題目及范文12篇匯編
- 【9語一模】2025年4月天津市和平區(qū)九年級中考一模語文試卷(含答案)
- 骨科科室工作總結(jié)匯報
評論
0/150
提交評論