<!-- LOG 如下兩包均可 --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.25</version> </dependency> <!-- <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> -->
# 日誌級別:ALL < DEBUG < INFO < WARN < ERROR < FATAL 當前開啓某一級別日誌時,大於它的日誌也將被開啓 # FATAL - 致命級別日誌: 指出每一個嚴重的錯誤事件將會致使應用程序的退出。 # ERROR - 錯誤級別日誌: 指出雖然發生錯誤事件,但仍然不影響系統的繼續運行的信息。 # WARN - 警告級別日誌: 代表會出現潛在錯誤的情形,有些信息不是錯誤信息,可是也要給程序員的一些提示。 # INFO - 消息級別日誌: 用於生產環境中輸出程序運行的一些重要信息,可是不能濫用,避免打印過多的日誌。 # DEBUG - 調試級別日誌: 開發人員能夠將任意信息在此打印,好比局部變量的值等等,主要是爲了瞭解程序運行狀態,便於調試。 # TRACE - 跟蹤級別日誌: 通常不使用。 # rootLogger 第一參數爲日誌級別, 其後參數爲日誌載體 log4j.rootLogger=DEBUG, C, R #定義日誌輸出目的地爲控制檯 log4j.appender.C=org.apache.log4j.ConsoleAppender log4j.appender.C.Target=System.out log4j.appender.C.layout=org.apache.log4j.PatternLayout log4j.appender.C.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:sss}][%p][%c] %m%n # 定義日誌輸出到文件 按時間劃分日誌文件 # 天天產生一個日誌文件 log4j.appender.R=org.apache.log4j.DailyRollingFileAppender # 日誌打印路徑: 1.絕對路徑; #log4j.appender.R.File=E:/logs/debug.log # 日誌打印路徑: 2.相對路徑${webApp.root}對應當前應用根目錄,在web.xml配置webAppRootKey才能使用; log4j.appender.R.File=${webapp.root}/logs/debug.log # 按期生成日誌文件: yyyy-MM 每個月; yyyy-ww 每週; yyyy-MM-dd 天天; yyyy-MM-dd-a 每半天; yyyy-MM-dd-HH 每小時... log4j.appender.R.DatePattern='('yyyy-MM-dd').log' log4j.appender.R.layout=org.apache.log4j.PatternLayout log4j.appender.R.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:sss}][%p][%c] %m%n # 按大小劃分日誌文件 # log4j.appender.R=org.apache.log4j.RollingFileAppender # log4j.appender.R.MaxFileSize=100KB
<!-- 日誌記錄, 配置日誌文件到項目根目錄下 --> <context-param> <param-name>webAppRootKey</param-name> <param-value>webapp.root</param-value> </context-param> <context-param> <param-name>log4jConfigLocation</param-name> <param-value>WEB-INF/classes/log4j.properties</param-value> </context-param> <listener> <listener-class>org.springframework.web.util.WebAppRootListener</listener-class> </listener> <!-- 日誌記錄 -->
當日志輸出到項目跟目錄時必須配置 web.xml 中配置; 若輸出絕對路徑則不須要配置web.xml;程序員