Log4j配置问题,求大神解决啊

zhwWasHere 2013-12-26 03:10:31
如下是我Log4j.properties配置文件

log4j.rootLogger=WARN,sunyard

log4j.logger.org.springframework=WARN
log4j.logger.org.hibernate=WARN
log4j.logger.com.opensymphony.xwork2=WARN
log4j.logger.cn.com.sunyard = WARN

log4j.appender.sunyard=org.apache.log4j.ConsoleAppender
log4j.appender.sunyard.layout=org.apache.log4j.PatternLayout
log4j.appender.sunyard.Target = System.out
log4j.appender.sunyard.layout.ConversionPattern=[QC] %10d %-4r %p [%t] %C.%M(%L) | %m%n


可是我的控制台却不打印我的Action中的异常信息。cn.com.sunyard这是我项目主目录,所有的service action都在这么目录下面的


...全文
100 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhwWasHere 2013-12-26
  • 打赏
  • 举报
回复
引用 7 楼 u012463264 的回复:
你去用吧 我们项目里的 。我也没配置过
多谢啦
别闹腰不好 2013-12-26
  • 打赏
  • 举报
回复
你去用吧 我们项目里的 。我也没配置过
别闹腰不好 2013-12-26
  • 打赏
  • 举报
回复
log4j.rootLogger=ERROR, A2 #log4j.rootLogger=ERROR, stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n log4j.appender.A2=org.apache.log4j.RollingFileAppender log4j.appender.A2.File=c:/tomcat.log log4j.appender.A2.MaxFileSize=10MB log4j.appender.A2.MaxBackupIndex=5 log4j.appender.A2.layout=org.apache.log4j.PatternLayout log4j.appender.A2.layout.ConversionPattern=%c %d{dd.MM.yyyy HH:mm:ss} -- %p -- %m%n
zhwWasHere 2013-12-26
  • 打赏
  • 举报
回复
引用 4 楼 u012463264 的回复:
[quote=引用 3 楼 zhwwanwan 的回复:] [quote=引用 2 楼 u012463264 的回复:] protected final Logger log = Logger.getLogger(this.getClass().getName());这是得到Logger对象。 1,手动输出日志 log.error("取得参数类型时错误。"); 2, 打出异常 catch (HibernateException e) { log.error(e); } 你可以配置输出到文件里。 程序发生异常,没有log4j也会输出到控制台
那我岂不是要把所有的代码都try catch住才能打印出来么…… 有些时候异常无法意料的,比如一些空指针什么的。之前没用log4j的时候还打印出来,现在用了感觉压根没异常输出栈了,好纠结啊[/quote] 这个东西主要目的不是打印到控制台,而是保存到文件中。[/quote] 如果我想在控制台打印所有异常信息该怎么写?
别闹腰不好 2013-12-26
  • 打赏
  • 举报
回复
引用 3 楼 zhwwanwan 的回复:
[quote=引用 2 楼 u012463264 的回复:] protected final Logger log = Logger.getLogger(this.getClass().getName());这是得到Logger对象。 1,手动输出日志 log.error("取得参数类型时错误。"); 2, 打出异常 catch (HibernateException e) { log.error(e); } 你可以配置输出到文件里。 程序发生异常,没有log4j也会输出到控制台
那我岂不是要把所有的代码都try catch住才能打印出来么…… 有些时候异常无法意料的,比如一些空指针什么的。之前没用log4j的时候还打印出来,现在用了感觉压根没异常输出栈了,好纠结啊[/quote] 这个东西主要目的不是打印到控制台,而是保存到文件中。
zhwWasHere 2013-12-26
  • 打赏
  • 举报
回复
引用 2 楼 u012463264 的回复:
protected final Logger log = Logger.getLogger(this.getClass().getName());这是得到Logger对象。 1,手动输出日志 log.error("取得参数类型时错误。"); 2, 打出异常 catch (HibernateException e) { log.error(e); } 你可以配置输出到文件里。 程序发生异常,没有log4j也会输出到控制台
那我岂不是要把所有的代码都try catch住才能打印出来么…… 有些时候异常无法意料的,比如一些空指针什么的。之前没用log4j的时候还打印出来,现在用了感觉压根没异常输出栈了,好纠结啊
别闹腰不好 2013-12-26
  • 打赏
  • 举报
回复
protected final Logger log = Logger.getLogger(this.getClass().getName());这是得到Logger对象。 1,手动输出日志 log.error("取得参数类型时错误。"); 2, 打出异常 catch (HibernateException e) { log.error(e); } 你可以配置输出到文件里。 程序发生异常,没有log4j也会输出到控制台
随便5个字 2013-12-26
  • 打赏
  • 举报
回复
这个只是配置文件而已,并不会把程序运行到那就打印到哪。需要自己手动写日志的。先获取logger对象,然后log.info("日志");等运行到这里,就会在控制台打印“日志”了。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧