分享

在struts里应用log4j写日志

 lancharl 2005-08-31
 
在struts里应用log4j写日志

转自:http://www./BBS/dispbbs.asp?boardID=59&ID=2036&page=1
在struts里应用log4j写日志,一般是放在classes目录下的名字是log4j.propertyies或log4j.xml。log4j.xml功能比较强一点。例子的大概内容是这样的
<?xml version="1.0" encoding="UTF-8"?>                                                        
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">                                  
<log4j:configuration xmlns:log4j="
‘ target=_blank>http://jakarta./log4j/">                   
 <appender name="ASYNC" class="org.apache.log4j.AsyncAppender">         
         <appender-ref ref="TEMP"/>                                                                
  <appender-ref ref="CONSOLE"/>                                                                
 </appender>

 <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
  <layout class="org.apache.log4j.PatternLayout">
         <param name="ConversionPattern"
                            value="%d %-5p [%t] %C (%F:%L) - %m%n"/>
  </layout>
 </appender>


 <appender name="TEMP" class="org.apache.log4j.RollingFileAppender">
  <param name="File" value="error.log"/>
  <param name="Append" value="true"/>
        <param name="ImmediateFlush" value="true"/>
        <param name="MaxFileSize" value="500KB"/>  
  <layout class="org.apache.log4j.PatternLayout">
         <param name="ConversionPattern"
                            value="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
  </layout>
  <filter class="org.apache.log4j.varia.LevelRangeFilter">
        <param name="LevelMin" value="ERROR"/>
        <param name="LevelMax" value="FATAL"/>  
        <param name="acceptOnMatch" value="TRUE"/>
      </filter>
 </appender>
 <appender name="LOG" class="org.apache.log4j.RollingFileAppender">
  <param name="File" value="log.log"/>
  <param name="Append" value="true"/>
        <param name="ImmediateFlush" value="true"/>
        <param name="MaxFileSize" value="500KB"/> 
  <layout class="org.apache.log4j.PatternLayout">
         <param name="ConversionPattern"
                            value="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
  </layout>                                                                      
  <filter class="org.apache.log4j.varia.LevelMatchFilter">
        <param name="LevelToMatch" value="ERROR"/> 
        <param name="acceptOnMatch" value="false"/>     
      </filter>                                                                    
 </appender>                                                              
  <logger name="com.ewuxi.champion">                      
    <level value="DEBUG"/>                                         
  </logger>                                                                   
  <logger name="com.ibatis">                                       
    <level value="DEBUG"/>                                         
  </logger>                                                                    
  <root>                                                                       
    <priority value="ERROR"/>                                     
    <appender-ref ref="CONSOLE"/>                           
    <!--                                                                          
    <appender-ref ref="TEMP"/>                                   
    <appender-ref ref="LOG"/>                                      
    -->                                                                            
  </root>                                                                       
</log4j:configuration>                                                    

其中append就一个日志的输出点,可以是文件,console或者其他(如mail).
如果是自己写程序时用,没有那么麻烦,建个log4j.properties
内容如下:
#levels: debug, info, warn, error, fatal         
log4j.rootCategory=DEBUG, stdout, logfile

log4j.appender.stdout=org.apache.log4j.ConsoleAppender                        
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout                   
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - <%m>%n

log4j.appender.logfile=org.apache.log4j.RollingFileAppender
# ---------------- Attention here ----------------------------
log4j.appender.logfile.File=koala.log                                    
log4j.appender.logfile.MaxFileSize=512KB                         
# Keep three backup files                                                     
log4j.appender.logfile.MaxBackupIndex=3                          
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
# Pattern to output : date priority [category] - <message>line_separator
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - <%m>%n
仔细看看,然后写一下就知道什么意思了。

然后写每个类时加一句话:
Log log = LogFactory.getLog(所在类名.class),然后程序里就
if (log.isInfo) {
     log.info("信息");
}
写一下就知道了。

作者:小数点  发表时间:2005-03-11 10:01

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约