程序加载制定日志文件

public static final String log4j = "log4j.xml";

     /**
* @declare 加载log4j
* @throws IOException
* @author cphmvp
*/
private static void loadLog4j() throws IOException {
Properties p = new Properties();
InputStream is = null;
is = ClassLoader.getSystemResourceAsStream(log4j);
p.load(is);
PropertyConfigurator.configure(p);// 路径
is.close();
}

较为简单的 :log4j.properties 日志区分不细

#log4j.rootLogger =DEBUG,Console
log4j.rootLogger =info,LogFile,Console # Output the log info to the Java Console
log4j.appender.Console = org.apache.log4j.ConsoleAppender
log4j.appender.Console.Target = System.out
log4j.appender.Console.ImmediateFlush = true
log4j.appender.Console.Threshold = INFO
log4j.appender.Console.layout = org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} %-5p %x -%m%n # Save the log info to the log file one day.
log4j.appender.LogFile = org.apache.log4j.DailyRollingFileAppender
log4j.appender.LogFile.File = ./logs/error.log
log4j.appender.LogFile.Append = true
log4j.appender.LogFile.ImmediateFlush = true
log4j.appender.LogFile.Threshold = INFO
log4j.appender.LogFile.Encoding = UTF-8
log4j.appender.LogFile.layout = org.apache.log4j.PatternLayout
log4j.appender.LogFile.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} -[%-t] %-5p %-4c %x -%m%n log4j.logger.httpclient.wire.header=ERROR
log4j.logger.httpclient.wire.content=ERROR
log4j.logger.org.apache.commons.httpclient = ERROR
# Set framework log level is debug
log4j.logger.java.sql=ERROR
#log4j.logger.org.springframework.jdbc.core=DEBUG
#log4j.logger.com.opensymphony.oscache.base=DEBUG
org.apache.http.client.protocol=ERROR
# log4j.logger.org.springframework.security=DEBUG
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG

较为完善的: 区分级别,可根据不同组织制定不同日志输出的 log4j.xml

 <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'>
<appender name="stdout" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="[%t] %d{yyyy.MM.dd HH:mm:ss} %5p - %m%n" />
</layout>
</appender>
<!--***********************************crawler日志 ********************************** -->
<!--****INFO级别***** -->
<appender name="crawler_infoLog" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="./logs/crawler_info.log" />
<param name="maxFileSize" value="2000KB" />
<param name="maxBackupIndex" value="10" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="[%t] %d{yyyy.MM.dd HH:mm:ss} %5p - %m%n" />
</layout>
<filter class="org.apache.log4j.varia.LevelRangeFilter">
<param name="LevelMax" value="INFO" />
<param name="LevelMin" value="INFO" />
</filter>
</appender> <!--****WARN级别***** -->
<appender name="crawler_warnLog" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="./logs/crawler_warn.log" />
<param name="maxFileSize" value="2000KB" />
<param name="maxBackupIndex" value="10" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="[%t] %d{yyyy.MM.dd HH:mm:ss} %5p - %m%n" />
</layout>
<filter class="org.apache.log4j.varia.LevelRangeFilter">
<param name="LevelMax" value="WARN" />
<param name="LevelMin" value="WARN" />
</filter>
</appender>
<!--****REEOR级别***** -->
<appender name="crawler_errorLog" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="./logs/crawler_error.log" />
<param name="maxFileSize" value="2000KB" />
<param name="maxBackupIndex" value="10" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="[%t] %d{yyyy.MM.dd HH:mm:ss} %5p - %m%n" />
</layout>
<filter class="org.apache.log4j.varia.LevelRangeFilter">
<param name="LevelMax" value="ERROR" />
<param name="LevelMin" value="ERROR" />
</filter>
</appender>
<!--****FATAL级别***** -->
<appender name="crawler_fatalLog" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="./logs/crawler_fatal.log" />
<param name="maxFileSize" value="2000KB" />
<param name="maxBackupIndex" value="10" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="[%t] %d{yyyy.MM.dd HH:mm:ss} %5p - %m%n" />
</layout>
<filter class="org.apache.log4j.varia.LevelRangeFilter">
<param name="LevelMax" value="FATAL" />
<param name="LevelMin" value="FATAL" />
</filter>
</appender> <!-- 记录该包下所有日志 -->
<logger name="org.apache">
<level value="INFO" />
<appender-ref ref="stdout" />
<appender-ref ref="crawler_infoLog" />
<appender-ref ref="crawler_warnLog" />
<appender-ref ref="crawler_errorLog" />
<appender-ref ref="crawler_fatalLog" />
</logger>
<logger name="com.alibaba.druid">
<level value="INFO" />
<appender-ref ref="stdout" />
<appender-ref ref="crawler_infoLog" />
<appender-ref ref="crawler_warnLog" />
<appender-ref ref="crawler_errorLog" />
<appender-ref ref="crawler_fatalLog" />
</logger> <logger name="com.loongtao.dmscrawler">
<level value="INFO" />
<appender-ref ref="stdout" />
<appender-ref ref="crawler_infoLog" />
<appender-ref ref="crawler_warnLog" />
<appender-ref ref="crawler_errorLog" />
<appender-ref ref="crawler_fatalLog" />
</logger> </log4j:configuration>

记录日志写法 ,error 级别的 logger.error(e.getMessage(),e);  【能显示详尽的信息,符合sona的语法检查 】

java_log4j 经典配置的更多相关文章

  1. t3用户-角色-权限hibernate经典配置

    用户-角色-权限hibernate经典配置. 既然有人问起,我就写下说明吧.在文章中间的配置文件那里.权当回忆一下,也帮助更多人.这是以前学校时写的,没有注释.都是贴的代码笔记.看到的莫要见怪.欢迎学 ...

  2. IIS集成和经典配置

    检測到在集成的托管管道模式下不适用的ASP.NET设置的解决方法(非简单设置为[经典]模式).  我们将ASP.NET程序从IIS6移植到IIS7,可能执行提示下面错误: HTTP 错误 500. ...

  3. Tomcat5.5.9+JSP经典配置实例

    一.开发环境配置 第一步:下载j2sdk和tomcat:到sun官方站(http://java.sun.com/j2se/1.5.0/download.jsp)下载j2sdk,注意下载版本为Windo ...

  4. CISCO ASA 5505 经典配置案例

    nterface Vlan2 nameif outside  ----------------------------------------对端口命名外端口  security-level 0 -- ...

  5. spring经典配置

    1.annotation方式 <?xml version="1.0" encoding="UTF-8"?><beans xmlns=" ...

  6. Tomcat+JSP经典配置实例

    经常看到jsp的初学者问tomcat下如何配置jsp.servlet和bean的问题,于是总结了一下如何tomcat下配置jsp.servlet和ben,希望对那些初学者有所帮助. 一.开发环境配置 ...

  7. EHcache经典配置

    记录重要的东西和常用的东西. <ehcache> <!-- 指定一个文件目录,当EHCache把数据写到硬盘上时,将把数据写到这个文件目录下 --> <diskStore ...

  8. 使用log4j配置不同文件输出不同内容

    敲代码中很不注意写日志,虽然明白很重要.今天碰到记录日志,需要根据内容分别输出到不同的文件. 参考几篇文章: 感觉最详细:http://blog.csdn.net/azheng270/article/ ...

  9. ubuntu14.04配置lnmp

    看到了一片讲解ubuntu下安装lnmp的文章,跟着一步步的来,竟然很顺利的成功了,将文章复制如下,原著勿怪 一.操作步骤 1.安装Nginx sudo apt-get install update ...

随机推荐

  1. ReplaceGoogleCDN:将 Google CDN 更换国家

    Chrome Web Store 安装地址:  https://chrome.google.com/webstore/detail/replace-google-cdn/kpampjmfiopfpkk ...

  2. 39一个可以让你受益HTML5课程

    事不宜迟,本文作者是我们收集的在线学习HTML5资源.我们希望他们能够帮助你更好地学习HTML5. 不错啊! 只,说原作者40一个只有39一.由于第一5钍和8一是重复. 原文在此! 1. 五分钟入门H ...

  3. 迅雷云加速开放平台c#demo

    迅雷云加速开放平台c#demo.很多人很遇到下载文件的问题.这个例子是调用迅雷云加速开放平台的dll,进行下载,速度很快,下载过程中可以获取到很全的下载信息,比如下载速度,进度,完成状态等. 例子中带 ...

  4. flask+gevent+gunicorn+nginx 初试

    1.安装flask pip install flask 2.安装gevent pip install gevent 3.安装gunicorn pip install gunicorn 版本信息例如以下 ...

  5. Linux高性能server规划——处理池和线程池

    进程池和线程池 池的概念 由于server的硬件资源"充裕".那么提高server性能的一个非常直接的方法就是以空间换时间.即"浪费"server的硬件资源.以 ...

  6. JAVA在IO流量汇总

    本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/42119261 我想你对JAVA的IO流有所了解,平时使用的 ...

  7. Codeforces Round #274 (Div. 2) --A Expression

    主题链接:Expression Expression time limit per test 1 second memory limit per test 256 megabytes input st ...

  8. android利用jdk制作签名

    Apk签名首先要有一个keystore的签名用的文件. keystore是由jdk自带的工具keytool生成的.详细生成方式參考一下: 開始->执行->cmd->cd 到你安装的j ...

  9. 【MySQL案件】ERROR 1665 (HY000)

    转载请注明: http://blog.csdn.net/jason_asia/article/details/36240815 1.1.1. ERROR 1665 (HY000) [环境的叙述性说明] ...

  10. FTP定时批量下载文件(SHELL脚本及使用方法 ) (转)--good

    #/bin/bash URL="http://192.168.5.100/xxx.php" check() { RESULT=$(curl -s $URL) echo $RESUL ...