日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

Log4J的配置

發布時間:2023/11/27 生活经验 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Log4J的配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Log4J簡介
日志記錄功能是一個項目中重要的組成部分,Log4J是APache下的一個開源日志組件,為java開發者提供了很大的便利。

Loggers,日志信息的優先級
日志信息的優先級從高到低有ERROR、WARN、 INFO、DEBUG,分別用來指定這條日志信息的重要程度,設置為高級別的優先級時,低優先級的日志將不會輸出,比如將日志級別設置為INFO,則DEBUG級別的目錄不會被記錄,為了防止日志輸出泛濫,最好不要將日志級別設置太低,一般為INFO即可。

Appenders,日志信息的輸出目的地
日志信息的輸出目的地指定了日志將打印到控制臺還是文件中,參數如下:
org.apache.log4j.ConsoleAppender (控制臺)
org.apache.log4j.FileAppender (文件)
org.apache.log4j.DailyRollingFileAppender(每天產生一個日志文件,本文中的案例選擇的策略)
org.apache.log4j.RollingFileAppender(文件大小到達指定尺寸的時候產生一個新的文件,也是一個不錯的選擇)
org.apache.log4j.WriterAppender(將日志信息以流格式發送到任意指定的地方)

Layouts,日志信息的輸出格式
輸出格式的功能是控制日志信息的顯示內容,參數如下:
org.apache.log4j.HTMLLayout(以HTML表格形式布局)
org.apache.log4j.PatternLayout(可以靈活地指定布局模式,本案例所選擇的策略,需對日志格式進行設置)
org.apache.log4j.SimpleLayout(包含日志信息的級別和信息字符串)
org.apache.log4j.TTCCLayout(包含日志產生的時間、線程、類別等等信息)

Log4J的輸出格式 :

layout中的參數都以%開始,后面不同的參數代表不同的格式化信息(參數按字母表順序列出):?
%c 輸出所屬類的全名,可在修改為 %d{Num} ,Num類名輸出的維(如:"org.apache.elathen.ClassName",%C{2}將輸出elathen.ClassName)?
%d 輸出日志時間其格式為 %d{yyyy-MM-dd HH:mm:ss,SSS},可指定格式 如 %d{HH:mm:ss}?
%l 輸出日志事件發生位置,包括類目名、發生線程,在代碼中的行數?
%n 換行符?
%m 輸出代碼指定信息,如info(“message”),輸出message?
%p 輸出優先級,即 FATAL ,ERROR 等?
%r 輸出從啟動到顯示該log信息所耗費的毫秒數?
%t 輸出產生該日志事件的線

?Log4J配置文件 : ??

# 配置根Logger
# level是指 日志的輸出級別 ,優先級從高到低分別是 ERROR 、 WARN 、 INFO 、 DEBUG 。
# appenderName 就是指日志信息輸出到哪個地方。您可以同時指定多個輸出目的地。
log4j.rootLogger  =   [ level ] , appenderName, appenderName, … # 定義日志輸出目的地
# appenderName就是指日志輸出的目的地,和log4j.rootLogger中的相同。
log4j.appender.appenderName=org.apache.log4j.DailyRollingFileAppender# org.apache.log4j.ConsoleAppender (控制臺)
# org.apache.log4j.FileAppender (文件)
# org.apache.log4j.DailyRollingFileAppender (每天產生一個日志文件)
# org.apache.log4j.RollingFileAppender (文件大小到達指定尺寸的時候產生一個新的文件)
# org.apache.log4j.WriterAppender (將日志信息以流格式發送到任意指定的地方)# 設置文件輸出路徑  mylog為日志文件的文件名,路徑為根目錄下的logs文件夾下的mylog.log文件
log4j.appender.appenderName.file=../logs/mylog.log# 當天的日志是mylog.log,當天過去之后,mylog.log就會重命名為mylog_yyyy-MM-dd.log ,yyyy-MM-dd為當天的日期
log4j.appender.appenderName.DatePattern='_'yyyy-MM-dd'.log'# 配置日志信息的格式(布局)
log4j.appender.appenderName.layout = org.apache.log4j.PatternLayout  # org.apache.log4j.HTMLLayout (以 HTML 表格形式布局)
# org.apache.log4j.PatternLayout (可以靈活地指定布局模式)
# org.apache.log4j.SimpleLayout (包含日志信息的級別和信息字符串)
# org.apache.log4j.TTCCLayout (包含日志產生的時間、線程、類別等等信息)# 日志信息輸出格式 
# [日期] 日志級別  全路徑類名 行號 日志信息 
log4j.appender.appenderName.layout.ConversionPattern=  [%d{yyyy-MM-dd HH\:mm\:ss}] %-5p %c  %L -%m%n# layout中的參數都以%開始,后面不同的參數代表不同的格式化信息(參數按字母表順序列出):# - X 號 : X 信息輸出時左對齊; 
# %p: 輸出日志信息優先級,即 DEBUG , INFO , WARN , ERROR , FATAL,
# %d: 輸出日志時間點的日期或時間,默認格式為 ISO8601 ,也可以在其后指定格式,比如: %d{yyy MMM dd HH:mm:ss,SSS}
# %r: 輸出自應用啟動到輸出該 log 信息耗費的毫秒數 
# %c: 輸出日志信息所屬的類目,通常就是所在類的全名 
# %t: 輸出產生該日志事件的線程名 
# %l: 輸出日志事件的發生位置,相當于 %C.%M(%F:%L) 的組合 , 包括類目名、發生的線程,以及在代碼中的行數。舉例: Testlog4.main(TestLog4.java:10)
# %x: 輸出和當前線程相關聯的 NDC( 嵌套診斷環境 ), 尤其用到像 Java servlets 這樣的多客戶多線程的應用中。 
# %%: 輸出一個 "%" 字符 
# %F: 輸出日志消息產生時所在的文件名稱 
# %L: 輸出代碼中的行號 
# %m: 輸出代碼中指定的消息 , 產生的日志具體信息 
# %n: 輸出一個回車換行符, Windows 平臺為 "/r/n" , Unix 平臺為 "/n" 輸出日志信息換行 # 設置日志字符集編碼格式 
log4j.appender.appenderName.encoding=utf-8# 設置日志的輸出級別,和log4j.rootLogger里面的相比 取級別高的。
log4j.appender.appenderName.Threshold = ERROR# 設置日志文件最大尺寸
log4j.appender.ROLLING_FILE.MaxFileSize=10MB   



#ex:

log4j.rootLogger = ERROR , appenderName , Console

log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout = org.apache.log4j.PatternLayout?
log4j.appender.Console.layout.ConversionPattern= [%d{yyyy-MM-dd HH\:mm\:ss}] %-5p %c %L -%m%n

log4j.appender.appenderName=org.apache.log4j.DailyRollingFileAppender
log4j.appender.appenderName.file=../logs/mylog.log
log4j.appender.appenderName.DatePattern='_'yyyy-MM-dd'.log'
log4j.appender.appenderName.layout = org.apache.log4j.PatternLayout?
log4j.appender.appenderName.layout.ConversionPattern= [%d{yyyy-MM-dd HH\:mm\:ss}] %-5p %c %L -%m%n
log4j.appender.appenderName.encoding=utf-8?
log4j.appender.appenderName.Threshold = ERROR?
log4j.appender.ROLLING_FILE.MaxFileSize=10MB

java 中的應用

private static Logger logger = Logger.getLogger(this.getClass().getName);Logger.debug(Object message);  // 調試信息 Logger.info(Object message);   // 一般信息 Logger.warn(Object message);   // 警告信息 Logger.error(Object message);  // 錯誤信息 

?

轉載于:https://www.cnblogs.com/zhaohongtian/p/6807395.html

總結

以上是生活随笔為你收集整理的Log4J的配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。