log4j配置

日志路径:

web方式:
web.xml

<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>webapp.root</param-value> </context-param>
<context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>60000</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> </listener>

log4j.properites

log4j.rootCategory=INFO,stdout,R

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %p %t %c - %m%n log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=${webapp.root}/logs/log.log log4j.appender.R.MaxFileSize=10000KB
log4j.appender.R.MaxBackupIndex=100
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %p %t %c - %m%n #log4j.logger.org.hibernate=INFO
log4j.logger.com.sohu.fortune.talk=DEBUG
log4j.logger.org.apache.commons.httpclient=ERRORf

Log4j支持两种配置文件格式,一种是XML格式的文件,一种是properties格式的文件。

获取路径:

String rootPath=this.getClass().getClassLoader().getResource("").getPath();

1.log4j.properties配置方法:

步骤:

0.下载log4j的jar包;

1.新建java项目;

2.新建包:

3.新建类:

4.在src下新建log4J.properties文本文件【日志配置文件】

5.新建lib文件夹:【存放第三方jar包】

6.新建bin文件夹:【存放生成的.class文件】

如下图:

package com.loveryw;

import org.apache.log4j.Logger; 

import org.apache.log4j.PropertyConfigurator;

public class log4Test {
private static Logger loger; //测试函数
public static void main(String args[])
{
String filePath="C:\\workspace\\Log4jTest\\src\\";
PropertyConfigurator.configure(filePath+"log4j.properties"); //获取路径,并加载log4j的配置文件
/*
roperties properties=new Properties();
InputStream inStream =inStream = Launcher.class.getClassLoader().getResourceAsStream("conf/log4j.properties");
  try {
  properties.load(inStream);
  }catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  PropertyConfigurator.configure(properties);
  log.info("start...");
*/
loger=Logger.getLogger("log4Test");
loger.debug("我是个bug");
loger.info("我是个info");
loger.error("我是个erro");
}
}

配置文件内容:log4J.properites

log4j.rootLogger=info,stdout,info,debug,error
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[%-5p] [%d{HH:mm:ss}] %c - %m%n log4j.logger.info=info
log4j.appender.info=org.apache.log4j.DailyRollingFileAppender
log4j.appender.info.layout=org.apache.log4j.PatternLayout
log4j.appender.info.layout.ConversionPattern=[%-5p] [%d{HH:mm:ss}] %c - %m%n
log4j.appender.info.datePattern='.'yyyy-MM-dd
log4j.appender.info.Threshold = INFO
log4j.appender.info.append=true
log4j.appender.info.File=C:\\workspace\\Log4jTest\\logs\\info.log log4j.logger.debug=debug
log4j.appender.debug=org.apache.log4j.DailyRollingFileAppender
log4j.appender.debug.layout=org.apache.log4j.PatternLayout
log4j.appender.debug.layout.ConversionPattern=[%-5p] [%d{HH:mm:ss}] %c - %m%n
log4j.appender.debug.datePattern='.'yyyy-MM-dd
log4j.appender.debug.Threshold = DEBUG
log4j.appender.debug.append=true
log4j.appender.debug.File=C:\\workspace\\Log4jTest\\logs\\debug.log log4j.logger.error=error
log4j.appender.error=org.apache.log4j.DailyRollingFileAppender
log4j.appender.error.layout=org.apache.log4j.PatternLayout
log4j.appender.error.layout.ConversionPattern=[%-5p] [%d{HH:mm:ss}] %c - %m%n
log4j.appender.error.datePattern='.'yyyy-MM-dd
log4j.appender.error.Threshold = ERROR
log4j.appender.error.append=true
log4j.appender.error.File=C:\\workspace\\Log4jTest\\logs\\error.log

2.xml配置方法:【主要用于web的配置】

常用参数说明:

1.log4j有三种主要组件:logger、appender and layout
  2.Log4j提供的appender有以下几种:
  org.apache.log4j.ConsoleAppender(控制台)
  org.apache.log4j.FileAppender(文件)
  org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
  org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
  org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
  3.Log4j提供的layout有以下几种:
  org.apache.log4j.HTMLLayout(以HTML表格形式布局)
  org.apache.log4j.PatternLayout(可以灵活地指定布局模式)
  org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串)
  org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
  4.Log4j提供的几种输出格式:
  %M:Used to output the method name where the logging request was issued.
  %m:Used to output the application supplied message associated with the logging event.
  %l:Used to output location information of the caller which generated the logging event
  %L:Used to output the line number from where the logging request was issued.
  %p:Used to output the priority of the logging event.
  %n:Outputs the platform dependent line separator character or characters.
  %r:Used to output the number of milliseconds elapsed since the start of the application until the creation of the logging event.
  %F:Used to output the file name where the logging request was issued.
  %d:Used to output the date of the logging event.
  %c:Used to output the category of the logging event
  %C:Used to output the fully qualified class name of the caller issuing the logging request
  5.如果是对于效率要求比较高的话,要在log.debug()之前加上log.isDebugEnabled()进行判断,这样能够大大减少执行时间
  6.对于各个appenders,共有的属性是layout(一般设置为org.apache.log4j.PatternLayout),Threshold(Log的级别)
  (1)ConsoleAppender:Target(System.out和System.err)
  (2)FileAppender:File(定义输出的文件名),Append(定义是否为追加)
  (3)DailyRollingFileAppender(除FileAppender属性外):MaxFileSize(最大文件大小),MaxBackupIndex()

log log4j配置的更多相关文章

  1. Log4j配置详解(转)

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

  2. log4j配置详解

    Log4J的配置文件(Configuration File)就是用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息.通过配置,可以创建出Log4J的运行环境 ...

  3. Log.properties配置详解

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

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

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

  5. log4j 配置

    给java项目添加log4j日志: 1.下载log4j jar包,放入lib目录, 导入项目中 2.创建log4j.properties 文件  目录 Src 3.在需要使用输出的类中使用 priva ...

  6. log4j配置日志文件log4j.appender.R.File相对路径方法

    方法一. 解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs ...

  7. Log4j 配置数据库连接池(将日志信息保存到数据库)

    org.apache.log4j.jdbc.JDBCAppender 是利用传统的 JDBC 连接方法,这种方式连接数据库效率低下,为了解决这个问题,现在自定义一个 Log4j 的 Appender, ...

  8. paip.Log4j配置不起作用的解决

    paip.Log4j配置不起作用的解决 1.jar包里的log4j配置 看累挂jar,真的有个" webservices-rt.jar\com\sun\org\apache\xml\inte ...

  9. Log4j配置与使用

    log4j是Java社区事实上的日志标准解决方案.使用起来比较简单. 一. 简单使用 1.下载jar包放到lib文件夹,并加入到build path中: 2.编写log4j.properties文件, ...

随机推荐

  1. facebook注册不了无法打开官网的解决办法

    上周有一个朋友问到我一个问题,问怎么facebook注册不了,facebook官网也无法打开?这个问题不知道有没有人遇到过,以前这个问题也困扰了我挺长时间的,其实想想也挺简单的,由于facebook, ...

  2. 异常java.sql.SQLException: Field 'id' doesn't have a default value

    使用spring data jpa出现这个情况. entity中的自增策略已经加好了. 还是出现这个异常.去数据库中查看,发现没有给主键加上自增. 出现这个问题去实体类跟数据库中看一下就可以了.

  3. 四、ABP 学习系列 - 配置Swagger

    一.再XX.Web项目中用Nuget安装Swashbuckle.AspNetCore.SwaggerGen和Swashbuckle.AspNetCore.SwaggerUI 二.在Startup.cs ...

  4. Java基础--HashCode

    如果一个类的对象要用做hashMap的key,那么一定要注意覆盖该类的equals和hashCode方法. equals()是基类Object的方法,用于判断对象是否有相同地址及是否为同一对象 pub ...

  5. (转)C# -- 扩展方法的应用(Extension Methods)

    本文转载自:http://blog.csdn.net/zxz414644665/article/details/9793205 当你有下面这样一个需求的时候,扩展方法就会起到作用:在项目中,类A需要添 ...

  6. java的reflection和introspector

    JAVA反射机制是在运行状态中,对于任意一个类,都能够得到这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法:这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制 ...

  7. 四川第七届 C Censor (字符串哈希)

    Censor frog is now a editor to censor so-called sensitive words (敏感词). She has a long text pp. Her j ...

  8. SUSE eth0 No such device

    删除 etc/udev/rules.d/70-persistent-net.rules 文件  之后重启让系统重新生成eth0配置文件 rm -f etc/udev/rules.d/70-persis ...

  9. cygwin选择安装包选项搭建NDK开发环境/配置cygwin的root权限

    9.Search是可以输入你要下载的包的名称,能够快速筛选出你要下载的包.那四个单选按钮是选择下边树的样式,默认就行,不用动.View默认是Category,建议改成full显示全部包再查,省的一些包 ...

  10. IE9以及IE9以下,无法执行innerHTML这一操作的解决方法

    例如:在select下无法用innerHTML添加<option> 解决代码: var s=document.createElement("option"); s.te ...