[轉]jboss下通過配置log4j.xml實現web應用的日志
作者Blog:http://blog.csdn.net/elathen/
log4j是一個優秀的開源的java日志系統,jboss內部也集成了它,在jboss下 默認的只是對server做了每日日志,并沒有對你部署的項目進行每日的日志構建,但我們可以通過修改log4j.xml文件來實現。log4j.xml 文件在jboss安裝目錄下的server\default\conf下,打開log4j.xml文件
這是log4j默認的配置,我們先熟悉一下 <!-- ============================== --> <!-- Append messages to the console --> <!-- ============================== --> <!--輸出方式:輸出到控制臺--> <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender"> <!-- 設置通道名稱:console和輸出方式:org.apache.log4j.RollingFileAppender 其中輸出方式appender有5種,分別為 org.apache.log4j.ConsoleAppender (控制臺) org.apache.log4j.FileAppender (文件) org.apache.log4j.DailyRollingFileAppender (每天產生一個日志文件) org.apache.log4j.WriterAppender (將日志信息以流格式發送到任意指定的地方)--> <param name="Target" value="System.out"/> <param name="Threshold" value="INFO"/> <!--Threshold是個全局的過濾器,它將把低于所設置的level的信息過濾不顯示出來--> <!--level:是日記記錄的優先級,優先級由高到低分為 OFF ,FATAL ,ERROR ,WARN ,INFO ,DEBUG ,ALL。 Log4j建議只使用FATAL ,ERROR ,WARN ,INFO ,DEBUG這四個級別。--> <layout class="org.apache.log4j.PatternLayout"> <!-- 配置日志輸出的格式--> 參數都以%開始后面不同的參數代表不同的格式化信息(參數按字母表順序列出): %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 輸出產生該日志事件的線程名 <!-- The default pattern: Date Priority [Category] Message\n --> <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/> </layout> </appender> <!輸出方式是:每天一個日志文件> <!-- A time/date based rolling appender --> <appender name="FILE" class="org.jboss.logging.appender.DailyRollingFileAppender"> <!--設置通道名稱是:file,輸出方式DailyRollingFileAppender--> <param name="File" value="${jboss.server.home.dir}/log/server.log"/> <!--日志文件路徑和文件名稱 --> <param name="Append" value="false"/> <!-- 設置是否在重新啟動服務時,在原有日志的基礎添加新日志 --> <!-- Rollover at midnight each day --> <param name="DatePattern" value="'.'yyyy-MM-dd"/> <!-- Rollover at the top of each hour <param name="DatePattern" value="'.'yyyy-MM-dd-HH"/> --> <layout class="org.apache.log4j.PatternLayout"> <!-- The default pattern: Date Priority [Category] Message\n --> <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/> <!-- The full pattern: Date MS Priority [Category] (Thread:NDC) Message\n <param name="ConversionPattern" value="%d %-5r %-5p [%c] (%t:%x) %m%n"/> --> </layout> </appender> |
上面是jboss下log4j的默認配置,對jboss的server進行日志記錄,接下來我們添加web項目的日志,在log4j.xml
文件中把下面的配置信息加上去就可以了
<!-- A size based file rolling appender--> <appender name="com.szypt.all" class="org.jboss.logging.appender.RollingFileAppender"> <param name="File" value="${jboss.server.home.dir}/log/elathen.log"/> <param name="Append" value="true"/> <param name="MaxFileSize" value="500KB"/> <param name="MaxBackupIndex" value="1"/> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/> </layout> </appender> <logger name="com.szypt"> <level value="DEBUG" /> <appender-ref ref="com.szypt.all"/> </logger> |