log4j完整版把错误信息放到日志中

来源:互联网 发布:c语言程序 编辑:程序博客网 时间:2024/05/20 19:28

由于APP服务器错误各种莫名错误。当别人发现问题反映到我们开发这边时,再想在打印窗口看错误信息已经不能了。为了查明引起错误的详细原因,这里就需要查看错误日子了。

所以在网上找把完整版的错误信息写入日志文件,花了了3个多小时在网上找答案,可惜各种版本各种无效。终于在网上一些版本的基础上,加上自己捣鼓,终于搞定了,特意发出来免费大家走冤枉路!

具体如下

完整配置文件  log4j.xml(也可以使用log4j.properties作为配置文件)   这里只写了一种appender  还有其他好几种,可以根据个人爱好使用

<?xml version="1.0" encoding="UTF-8"?>  <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">    <log4j:configuration debug="true" xmlns:log4j="http://jakarta.apache.org/log4j/">        <appender name="stdout"  class="org.apache.log4j.DailyRollingFileAppender">          <param name="File" value="logs/log.log" />  //日志文件根目录下logs文件夹下面               <param name="DatePattern" value="'.'yyyy-MM-dd'.log'" />              <param name="encoding" value="gbk" />           <layout class="org.apache.log4j.PatternLayout">                <param name="ConversionPattern"    value="%m%n" /> // "%m%n" 表示写入完整的错误日志           </layout>            </appender>        <root>          <level value="info" />          <appender-ref ref="stdout" />      </root></log4j:configuration>


由于我们的服务器入口都集中到一个抽象方法里面。所以只需要在里面添加

private static final Logger logger = LoggerFactory.getLogger(classname.class);try{   System.out.println(1/0);} catch (Exception e) {    logger.error(e.getMessage(),e);//错误异常完整写入日志   e.printStackTrace();//窗口也打印错误信息}


就ok了,当然后面代码里面的各种异常往上抛就可以了。


原创粉丝点击