亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

SLF4J日志門面

2019-11-14 21:02:43
字體:
來源:轉載
供稿:網友
SLF4J日志門面

SLF4J官網:http://www.slf4j.org/

SLF4J的作用通俗點講,就是可以讓我們的項目以最小的代價更換不同的日志系統。無需修改代碼,只需要添加、刪除相應的jar包和配置文件。

1.添加”slf4j-api-xxx.jar”到項目中。(xxx代表版本號,本文用的是1.7.7版本)

2.建個項目,編寫幾句簡單的日志記錄的代碼。

//import org.apache.log4j.PRopertyConfigurator;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class test_slf4j {public static void main(String[] args) {// PropertyConfigurator.configure("log4j.properties");Logger logger = LoggerFactory.getLogger(test_slf4j.class);logger.trace("I'm trace log.");logger.debug("I'm debug log.");logger.info("I'm info log.");logger.warn("I'm warn log.");logger.error("I'm error log.");}}

3.下載的SLF4J壓縮包里自帶了很多的日志系統,體驗一下幾個常用的。

【Simple】

先來用一下簡單日志,添加”slf4j-simple-xxx.jar”到項目中。

image

然后直接運行上面的代碼,控制臺輸出結果:

[main] INFO test_slf4j - I'm info log.[main] WARN test_slf4j - I'm warn log.[main] ERROR test_slf4j - I'm error log.

貌似因為沒有自定義配置文件,默認配置把trace和debug級別的日志給過濾了。

【JDK】

再來試試jdk自帶的日志系統,刪除”slf4j-simple-xxx.jar”,添加”slf4j-jdk14-xxx.jar”到項目中。 注意:項目中不能有多個日志系統,否則SLF4J因為不知道用哪個會報錯。

image

然后直接運行上面的代碼,控制臺輸出結果:

八月 30, 2014 12:44:12 下午 test_slf4j main信息: I'm info log.八月 30, 2014 12:44:13 下午 test_slf4j main警告: I'm warn log.八月 30, 2014 12:44:13 下午 test_slf4j main嚴重: I'm error log.

結果和簡單日志差不多,除了日志格式不同,多了日志記錄時間,也是被過濾了trace和debug級別的日志。

【Log4j】

上面的日志內容實在是過于簡單,對我們實際開發可以說是作用甚微。日志文件當然是越詳細越好,尤其是在修復BUG時,能夠準確的定位到哪一行代碼是極好的。 來試一下大家常用的Log4j,刪除其他日志系統的jar包,添加”slf4j-log4j12-xxx.jar”,還需添加一個Log4j1.2版本的jar包,去Log4j的官網上下載一個。現在Log4j1已經停止更新,Log4j2說是比1提升非常多。我一開始用SLF4J + Log4j2,但是一直不成功。網上的資料也不多,等回頭有時間研究一下再寫一篇SLF4J + Log4j2的文章,這里我用的是SLF4J-1.7.7 + Log4j-1.2.17。

添加了需要的jar包,還需添加Log4j的配置文件”log4j.properties”。

image

我配置的log4j.properties具有三種Logger。 Console:控制臺輸出DEBUG級別以上的日志。 LogFile:文本記錄INFO級別以上的日志,文件最大不超過2MB。 ErrorFile:文件記錄ERROR級別以上的日志,以日期格式命名文件,如“error.log.2014-08-01”、“error.log.2014-08-02”。

# Set log levels #log4j.rootLogger = DEBUG, Console, LogFile, ErrorFile# Output the log info to the java Console #log4j.appender.Console = org.apache.log4j.ConsoleAppenderlog4j.appender.Console.Target = System.outlog4j.appender.Console.Threshold = DEBUGlog4j.appender.Console.layout = org.apache.log4j.PatternLayoutlog4j.appender.Console.layout.ConversionPattern = <%-d{yyyy-MM-dd HH:mm:ss}> <%t> %l %n<%p> %m%n%n# Save the log info to the log file #log4j.appender.LogFile = org.apache.log4j.RollingFileAppenderlog4j.appender.LogFile.File = logs/log.loglog4j.appender.LogFile.Append = truelog4j.appender.LogFile.MaxFileSize = 2MBlog4j.appender.LogFile.MaxBackupIndex = 100log4j.appender.LogFile.Threshold = INFOlog4j.appender.LogFile.layout = org.apache.log4j.PatternLayoutlog4j.appender.LogFile.layout.ConversionPattern = <%-d{yyyy-MM-dd HH:mm:ss}> <%t> %l %n<%p> %m%n%n# Save the error info to the error file. A file one day. #log4j.appender.ErrorFile = org.apache.log4j.DailyRollingFileAppenderlog4j.appender.ErrorFile.File = logs/error.loglog4j.appender.ErrorFile.Append = truelog4j.appender.ErrorFile.Threshold = ERRORlog4j.appender.ErrorFile.layout = org.apache.log4j.PatternLayoutlog4j.appender.ErrorFile.layout.ConversionPattern = <%-d{yyyy-MM-dd HH/:mm/:ss}> <%t> %l %n<%p> %m%n%n

在src根目錄下創建“log4j.properties”,Log4j在啟動時會默認尋找這個配置文件。如果你將配置文件放在其他地方,可以用上面注釋掉的代碼先加載指定的配置文件,支持絕對路徑和相對路徑。 還是直接運行上面的代碼,控制臺輸出結果:

<2014-08-30 13:17:03> <main> test_slf4j.main(test_slf4j.java:17) <DEBUG> I'm debug log.<2014-08-30 13:17:03> <main> test_slf4j.main(test_slf4j.java:18) <INFO> I'm info log.<2014-08-30 13:17:03> <main> test_slf4j.main(test_slf4j.java:19) <WARN> I'm warn log.<2014-08-30 13:17:03> <main> test_slf4j.main(test_slf4j.java:20) <ERROR> I'm error log.

我配置的log4j.rootLogger = DEBUG,所以trace沒有被輸出。去查看兩個日志文件,也成功記錄了相應的日志。

image


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产福利视频一区二区| 亚洲欧美成人网| 日韩在线观看电影| 中文字幕精品久久| 国产欧美日韩中文字幕| 日韩久久午夜影院| 在线观看视频亚洲| 精品色蜜蜜精品视频在线观看| 亚洲高清av在线| 国产精品91视频| 日韩av成人在线观看| 色综合久综合久久综合久鬼88| 亚洲综合一区二区不卡| 成人黄色免费在线观看| 亚洲电影成人av99爱色| 国产小视频国产精品| 亚洲人午夜色婷婷| 亚洲无线码在线一区观看| 中文字幕欧美专区| 亚洲综合精品伊人久久| 日韩国产欧美精品在线| 午夜精品久久久久久久99黑人| 日韩在线中文视频| 色悠久久久久综合先锋影音下载| 精品中文字幕在线| 欧美成人激情在线| 97超级碰碰碰久久久| 久久中文字幕在线视频| 国产在线999| 亚洲va欧美va国产综合久久| 国产精品男人爽免费视频1| 中文字幕精品av| 欧美综合国产精品久久丁香| 久久69精品久久久久久国产越南| 国产精品亚洲精品| 国产精品夜色7777狼人| 性亚洲最疯狂xxxx高清| 26uuu日韩精品一区二区| 正在播放欧美一区| 在线成人免费网站| 国产精品视频成人| 欧美国产日韩一区二区三区| 欧美日韩在线视频首页| 欧美激情视频给我| 国产一区二中文字幕在线看| 精品久久中文字幕| 97视频国产在线| 精品久久久999| 国产91av在线| 亚洲精品视频二区| 日韩欧美极品在线观看| 在线观看欧美视频| 91美女片黄在线观| 最近2019中文字幕一页二页| 欧美尤物巨大精品爽| 亚洲综合日韩中文字幕v在线| 成人美女av在线直播| 国模视频一区二区三区| 国产成人精品日本亚洲专区61| 欧美国产精品va在线观看| 亚洲国产精品99| 大伊人狠狠躁夜夜躁av一区| 日韩在线免费av| 亚洲综合社区网| 亚洲字幕一区二区| 亚洲电影免费观看高清| 久久久综合免费视频| 日韩欧美第一页| 久久99久久亚洲国产| 国产拍精品一二三| 成人欧美在线视频| 欧美福利视频在线观看| 国产精品偷伦免费视频观看的| 91国产美女在线观看| 91精品久久久久久久久久久| 一区二区三区动漫| 精品久久久久久中文字幕一区奶水| 日韩av电影在线播放| 日韩精品在线视频美女| 国产亚洲欧美日韩一区二区| 久久精品国产亚洲| 国产精品成人一区| 国产成人avxxxxx在线看| 国产女精品视频网站免费| 欧美成人性生活| 欧美国产亚洲视频| 国产99久久精品一区二区| 成人网在线观看| 亚洲黄在线观看| 96精品久久久久中文字幕| 欧美激情视频一区二区三区不卡| 国产精品高潮视频| 日韩精品福利在线| 亚洲成人中文字幕| 亚洲一区二区三区毛片| 日韩日本欧美亚洲| 国产成人涩涩涩视频在线观看| 九色91av视频| 亚洲精品久久久一区二区三区| 久久久久久久香蕉网| 国产精品久久久久久亚洲影视| 国产成人av网址| 91精品91久久久久久| 91日本在线视频| 国产99久久精品一区二区 夜夜躁日日躁| 国产精品一二三在线| 国产成人精品久久久| 人人爽久久涩噜噜噜网站| 国产精品久久久久久久久久| 久久久成人的性感天堂| 久久久久久久久亚洲| 亚洲欧美日韩一区在线| 精品久久久久久久久久久久久久| 国产深夜精品福利| 日韩美女写真福利在线观看| 久久精品99久久香蕉国产色戒| 亚州精品天堂中文字幕| 久久91亚洲精品中文字幕奶水| 久久综合电影一区| 最近2019中文字幕在线高清| 精品亚洲男同gayvideo网站| 国产精品丝袜视频| 国产精品欧美风情| 国产精品夜间视频香蕉| 57pao国产精品一区| 性欧美暴力猛交69hd| 亚洲图片在线综合| 亚洲精品电影网| 欧美激情第6页| 亚洲人午夜精品| 成人免费大片黄在线播放| 日韩精品视频免费专区在线播放| 国产免费亚洲高清| 色老头一区二区三区| 成人黄在线观看| 88xx成人精品| 成人夜晚看av| 国产精品www色诱视频| 精品久久久视频| 最近2019免费中文字幕视频三| 日韩中文字在线| 国产精品91久久久| 91最新国产视频| 欧美黑人一区二区三区| 欧美巨猛xxxx猛交黑人97人| 国内精品国产三级国产在线专| 欧美激情免费在线| 欧美大尺度电影在线观看| 国产日韩av高清| 亚洲国产中文字幕久久网| 91精品国产亚洲| 国产综合视频在线观看| 26uuu亚洲国产精品| 中文字幕欧美精品日韩中文字幕| 88国产精品欧美一区二区三区| 久久精品一偷一偷国产| 2018国产精品视频| 丝袜亚洲另类欧美重口| 2018国产精品视频| 国产精品久久久久不卡| 亚洲激情在线观看| 日韩av中文字幕在线播放| 青青草原成人在线视频| 成人黄在线观看|