public class TimerUpdate extends TimerTask { // 获取日志生成器 private static Logger log = Logger.getLogger(TimerUpdate.class); public void run() { try{ }catch (Exception e) { e.printStackTrace(); log.info(e); }} }#指定logger
配置Logger组件
设定Log4j的日志级别(error warn info debug)
输出目的地(Console, logfile是appender的名字,是自己定义的,后面才赋予具体的含义)
log4j.rootLogger=info, Console, logfile
###################################################################################################################
#指定appender(目的地)
#设定Logger的Console(appender的名字)的Appender类型为控制台输出
#org.apache.log4j.ConsoleAppender 表明 Console是控制台输出
log4j.appender.Console=org.apache.log4j.ConsoleAppender#输出的格式
#设定Console的Appender布局Layout
#org.apache.log4j.PatternLayout(可以灵活地指定布局模式)包含选项:
#ConversionPattern=%m%n :指定怎样格式化指定的消息
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
#2009-09-29 07:30:43,265 INFO com.itcast.web.controller.SearchCdServlet.doGet() - e
log4j.appender.Console.layout.ConversionPattern=%d %p %c.%M() - %m%n###################################################################################################################
#设定Logger的logfile(appender的名字)的Appender类型为文件大小到达指定尺寸的时候产生一个新的文件
log4j.appender.logfile=org.apache.log4j.RollingFileAppender#设定文件的输出路径(指定文件的名字和路径)
log4j.appender.logfile.File=${catalina.home}/webapps/logs/Sendmsgcsv.log
#设定后缀可以是KB, MB 或者是 GB. 在日志文件到达该大小时,将会自动滚动,即将原来的内容移到logstrore.log.1文件
log4j.appender.logfile.MaxFileSize=2048KB#Keep three backup files.指定可以产生的滚动文件的最大数
log4j.appender.logfile.MaxBackupIndex=4#设定logfile的Appender布局Layout
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p %c.%M() - %m%n
###################################################################################################################
日志里错误内容: 2012-09-28 11:32:07,507 INFO org.hp.Listener.util.TimerUpdate.run() - java.lang.NullPointerException
问题这样的日志:.1.我怎么知道是第几行抛出的异常呢? 2.请大家指导下怎么在生成的错误日志中显示哪行报的错误信息