首页 > 代码库 > 开过程中遇到的问题及解决

开过程中遇到的问题及解决

1.log 打印异常信息 

Logger logger = Logger.getLogger(LoggerTest.class);  //追踪产生此日志的类

Logger extends Category 

Category {

public void error(Object message);//print the name of the  Throwable  but no stack trace.

public void error(Object message, Throwable t);//including its stack trace 会打印异常堆栈的信息 

}

日志级别:OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者您定义的级别

Log4j建议只使用四个级别,优先级从高到低分别是 ERROR、WARN、INFO、DEBUG

大于等于设定级别的级别日志才输出。比如在这里定义了INFO级别,则应用程序中所有DEBUG级别的日志信息将不被打印出来

顺便学习 log4j 的配置:

log4j.rootLogger = ${pom.log.level}, console,logInfo //将等级为INFO的日志信息输出到console和logInfo这两个目的地
log4j.logger.OperationLogger = INFO,fileA

### console appender ####
log4j.appender.console = org.apache.log4j.ConsoleAppender  //定义名为console的输出端是哪种类型

org.apache.log4j.ConsoleAppender(控制台)

org.apache.log4j.FileAppender(文件),

org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),

org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)

org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)


log4j.appender.console.layout = org.apache.log4j.PatternLayout  //定义名为console的输出端的layout是哪种类型

org.apache.log4j.HTMLLayout(以HTML表格形式布局),

org.apache.log4j.PatternLayout(可以灵活地指定布局模式)

org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),

org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)


log4j.appender.console.layout.ConversionPattern = [%t] %d{yyyy-MM-dd HH:mm:ss} %-5p -%l %x - %m%n //如果使用pattern布局就要指定的打印信息的具体格式ConversionPattern

 

### logInfo appender ####
log4j.appender.logInfo = org.apache.log4j.DailyRollingFileAppender
log4j.appender.logInfo.File = ${catalina.home}/logs/devportal.log
log4j.appender.logInfo.DatePattern = ‘-‘yyyyMMdd‘.log‘
log4j.appender.logInfo.layout = org.apache.log4j.PatternLayout
log4j.appender.logInfo.layout.ConversionPattern=[%t] %d{yyyy-MM-dd HH:mm:ss} %-5p -%l %x - %m%n

### OperationLogger fileA appender ###
log4j.appender.fileA = org.apache.log4j.DailyRollingFileAppender
log4j.appender.fileA.File = ${catalina.home}/logs/devportal-business.log
log4j.appender.fileA.DatePattern = ‘-‘yyyyMMdd‘.log‘
log4j.appender.fileA.layout = org.apache.log4j.PatternLayout
log4j.appender.fileA.layout.ConversionPattern=[%t] %d{yyyy-MM-dd HH:mm:ss} %-5p -%l %x - %m%n

 

#level
log4j.logger.org.apache=${pom.log.level}
log4j.logger.org.springframework=${pom.log.level}
log4j.logger.net.rubyeye=error

#mybatis
log4j.logger.org.mybatis = ${pom.log.level}
#log4j.logger.com.ibatis=debug
#log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug
#log4j.logger.com.ibatis.common.jdbc.ScriptRunner=debug
#log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=debug

#sql
log4j.logger.java.sql.ResultSet=${pom.log.level}
log4j.logger.java.sql.Connection=${pom.log.level}
log4j.logger.java.sql.Statement=${pom.log.level}
log4j.logger.java.sql.PreparedStatement=${pom.log.level}

 

开过程中遇到的问题及解决