SSH框架配置log4j

1. log4j(log4j.properties)配置文件

定義日誌配置文件,放到WEB-INFO目錄下。

log4j.logger.OperateLog=INFO,A1
###輸出到日誌文件###
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.File=E:\\file.log
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MM-dd HH\:mm\:ss} [%t\:%r]-[%p] %m%n
其中,OperateLog是自定義日誌的名稱,調用的時候要用到,該配置文件中可以定義多個不同的日誌輸出配置,當調用的時候用哪個就調用哪個。

INFO是日誌輸出級別,主要有:ERROR、WARN、INFO、DEBUG

ERROR 爲嚴重錯誤 主要是程序的錯誤
WARN 爲一般警告,比如session丟失
INFO 爲一般要顯示的信息,比如登錄登出
DEBUG 爲程序的調試信息

A1是輸出的目的地,可以是多個,直接跟在後面,用逗號隔開。表示將日誌級別爲INFO的信息輸出到A1這個目的地。接下來的四句代碼就是定義A1的。

關於appender輸出目的地,輸出格式等的詳細定義,自己可以google之,這裏不詳細介紹。

log4j的三個重要部分:日誌信息的優先級,日誌信息的輸出目的地,日誌信息的輸出格式。

2. web.xml配置

	<context-param>
   		<param-name>log4jConfigLocation</param-name> 
   		<param-value>WEB-INF/log4j.properties</param-value> 
	</context-param>
	<context-param> 
   		<param-name>log4jRefreshInterval</param-name> 
   		<param-value>60000</param-value> 
	</context-param> 
	<!-- 需要添加spring-web.jar包,否則用發生錯誤信息 -->
	<listener> 
   		<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> 
	</listener> 

第一個參數定義的是log4j配置文件的位置,第二個參數定義的是刷新週期,修改log4j配置文件後不用重新部署。後面的是監聽器,必須將spring-web.jar包包含到項目工程裏。

3. 調用

在需要日誌輸出的類中,定義日誌對象

private final Logger logger = Logger.getLogger("OperateLog");

其中OperateLog是自定義的日誌名稱,可以根據需求,進行定義、使用。

在需要輸出日誌的地方使用

 logger.info(session.getAttribute("user") + "登錄系統");

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章