log4j詳細配置
參考博客:https://blog.csdn.net/sinat_30185177/article/details/73550377
log4j。。很簡單好用的一個記錄日誌的東東,正因為好用,本人從來沒有親自配置過(都是別人在項目裏面配好的,直接copy過來用),但是最近進了一家新公司,(或許因為某些原因)他們封裝了一個日誌工具類日誌打印特定的信息,因為此項目以後由我接手,所以我做主就後來改了日誌打印方式,原本代碼如下:
此方式稱之為方法一..
public class LogTool { public static void debugSysLog(String logtext) { writeLog(logtext,"info"); System.out.println(logtext); } static Logger log = Logger.getLogger(LogTool.class); public static void writeLog(String msg,String level){ if(level.equals("debug")) log.debug(msg); else if(level.equals("error")) log.error(msg);else if(level.equals("warn")) log.warn(msg); else log.info(msg); } }
log4j.properties的代碼:
log4j.rootLogger=INFO,logfile,stdout,DEBUG #輸出到控制臺 log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.Target= System.out log4j.appender.stdout.layout.ConversionPattern=%d %p [%c]:%l - %m%n #log4j.appender.logfile=org.apache.log4j.FileAppender #log4j.appender.logfile=org.apache.log4j.RollingFileAppender
#log4j.appender.logfile.MaxFileSize=1MB #輸出到文件 log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender log4j.appender.logfile.DatePattern=‘.‘yyyy-MM-dd log4j.appender.logfile.File=${catalina.home}/webapps/logs/invoice.log #log4j.appender.logfile.MaxBackupIndex=20 log4j.appender.logfile.layout=org.apache.log4j.PatternLayout log4j.appender.logfile.layout.ConversionPattern=%d %p : %l - %m%n
上面的log4j配置文件我已經修改過了,原本的是不打印錯誤信息的,即下面的一些東東記一下就行了。
#%m 輸出代碼中指定的消息
#%p 輸出優先級,即DEBUG,INFO,WARN,ERROR,FATAL
#%r 輸出自應用啟動到輸出該log信息耗費的毫秒數
#%c 輸出所屬的類目,通常就是所在類的全名
#%t 輸出產生該日誌事件的線程名
#%n 輸出一個回車換行符,Windows平臺為“/r/n”,Unix平臺為“/n”
#%d 輸出日誌時間點的日期或時間,默認格式為ISO8601,也可以在其後指定格式,比如:%d{yyy MMM dd HH:mm:ss , SSS},輸出類似:2002年10月18日 22:10:28
#%l 輸出日誌事件的發生位置,包括類目名、發生的線程,以及在代碼中的行數。舉例:Testlog4.main(TestLog4.java: 10 )
使用工具類打印的信息如上圖紅色部分(很整潔,漂亮,,有亂用??有一次項目報錯空指針,都不知道哪裏錯的。。)
方法二:
使用同樣的配置文件,在項目裏面使用如下代碼打印日誌,會提示的很完整,且方法一能實現的方法二都可以實現..
Logger log = Logger.getLogger(InvoiceBuildServlet.class);
在catch裏面用 log.error("error",e);
很簡單。。
下面是配置文件源文件的下載地址
https://files.cnblogs.com/files/haopengchen/log4j.properties.zip
log4j詳細配置