關(guān)于logBack配置日志文件及編碼配置的問題
記錄下使用logback中遇到的問題,方便以后查看
logback輸出到文件文件大小設(shè)置問題
目前網(wǎng)上能搜到的關(guān)于輸出到日志文件的大小設(shè)置有如下兩種:
1.單獨(dú)的triggeringPolicy標(biāo)簽
若rollingPolicy用SizeAndTimeBasedRollingPolicy,直接復(fù)制下面的triggeringPolicy會(huì)報(bào)錯(cuò),說無法創(chuàng)建triggeringPolicy component。
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> <fileNamePattern>tests.%i.log.zip</fileNamePattern> <minIndex>1</minIndex> <maxIndex>3</maxIndex> </rollingPolicy> <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>5MB</maxFileSize> </triggeringPolicy>
2.此種方式會(huì)有warning 說SizeAndTimeBasedFNATP是過時(shí)的了
請(qǐng)用最新的SizeBasedTriggeringPolicy
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>E:/logs/mylog-%d{yyyy-MM-dd_HH-mm}.%i.log</fileNamePattern> <maxHistory>5</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>100MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy>
目前自己用的是一種比較簡(jiǎn)單的方法:
tests.%i.log.zip
30
10MB
如果完全按照第一種方法里的貼進(jìn)去應(yīng)該也是沒問題的。
設(shè)置日志文件輸出編碼格式
網(wǎng)上logback.xml配置的很多,但大部分都不包含輸出編碼設(shè)置的,而logback默認(rèn)輸出到文件的編碼格式是ANSI的,所以.java里是UTF-8沒有問題的輸出到日志里卻成了亂碼。
網(wǎng)上搜到的第一種方式是:
append下添加標(biāo)簽:
<charset class="java.nio.charset.Charset">UTF-8</charset>
此方法使用后logback本身有報(bào)錯(cuò),說無法識(shí)別charset配置
第二種方法:
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L - %msg%n</pattern> <charset>utf-8</charset> </encoder>
有的說此方式已經(jīng)過時(shí)了,實(shí)際使用logback-core 1.2.3版本的沒有啥問題。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
@Transactional遇到try catch失效的問題
這篇文章主要介紹了@Transactional遇到try catch失效的問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-01-01詳解SpringBoot如何實(shí)現(xiàn)整合微信登錄
本文主要介紹了SpringBoot實(shí)現(xiàn)整合微信登錄的過程詳解,文中的示例代碼介紹的非常詳細(xì),對(duì)我們的學(xué)習(xí)過工作有一定的參考價(jià)值,需要的朋友可以關(guān)注下2021-12-12Java中使用JavaMail多發(fā)郵件及郵件的驗(yàn)證和附件實(shí)現(xiàn)
這篇文章主要介紹了Java中使用Java Mail多發(fā)郵件及郵件的驗(yàn)證和附件實(shí)現(xiàn),包括在郵件中加入圖片等功能的實(shí)現(xiàn)講解,需要的朋友可以參考下2016-02-02十分鐘速懂java知識(shí)點(diǎn) System類
這篇文章主要介紹了java知識(shí)點(diǎn)System類,根據(jù)一次面試總結(jié)的,可以十分鐘速懂System類,感興趣的小伙伴們可以參考一下2015-12-12Spring啟動(dòng)后獲取所有擁有特定注解的Bean實(shí)例代碼
這篇文章主要介紹了Spring啟動(dòng)后獲取所有擁有特定注解的Bean實(shí)例代碼,分享了相關(guān)代碼示例,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-02-02