目录

  1. 代码
  2. 配置
  3. 编译
  4. 测试

代码:

import org.apache.log4j.*;

public class Client{
public static void main(String[] args){
PropertyConfigurator.configure("log4j.properties");
Logger logger = Logger.getLogger(Client.class);
logger.info("this is info");
logger.debug("this is debug");
logger.error("this is error");
}
}

配置:


#其中DEBUG为日志level,通过更改此level可以控制日志粒度
#其后的D、I、E表示日志将被记录的哪里,这里都是文件,实际上数据库也可以是目的地
log4j.rootLogger =DEBUG, D,I,E ###
#配置保存在位置D的日志以文件的形式保存,更多保存方式自行查找
log4j.appender.D=org.apache.log4j.FileAppender
#配置日志文件的在磁盘上的位置
log4j.appender.D.File =logs/ALL.txt
#这个Threshold比较关键,它的值决定当前位置D记录日志的粒度
#粒度精细到调试(debug<info<warn<error<fatal)粒度粗到产生严重错误才记录日志
log4j.appender.D.Threshold =DEBUG
log4j.appender.D.Append =true
#这个选项表示日志以那种格式输出
log4j.appender.D.layout =org.apache.log4j.PatternLayout
#日志的内容,这里面的内容比较碎,多上网查吧
log4j.appender.D.layout.ConversionPattern =%d{yy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n #
log4j.appender.I=org.apache.log4j.FileAppender
log4j.appender.I.File =logs/INFO.txt
log4j.appender.I.Threshold =INFO
log4j.appender.I.Append =true
log4j.appender.I.layout =org.apache.log4j.PatternLayout
log4j.appender.I.layout.ConversionPattern =%d{yy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n #
log4j.appender.E=org.apache.log4j.FileAppender
log4j.appender.E.File =logs/ERROR.txt
log4j.appender.E.Threshold =ERROR
log4j.appender.E.Append =true
log4j.appender.E.layout =org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern =%d{yy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n

编译:


测试:


我个人觉得那个配置文件需要耐心的弄一下,特别的,

log4j.rootLogger =DEBUG, D,I,E,就是 log4j.rootLogger = [ level ] , appenderName1 , appenderName2 , …

前面是日志的粒度控制,后面是日志“保存、显示”在哪里,我刚开始认为 log4j.rootLogger 这个key对应的是不同level的列表,有点蠢。。。哈

基本上就是决定日志去往哪些地方,然后对每个地方进行个性化设置。


这里有比较详细的配置文件的写法:http://m.blog.csdn.net/zhanghaipeng1989/article/details/40155521

把不同的类的日志单独成存放:http://blog.csdn.net/janestone/article/details/1862678

日志的存放路径配置方法:http://blog.csdn.net/longaohun/article/details/6233099

log4j1-x使用的更多相关文章

  1. Log4J1升级Log4J2

    近期,碰到需要将项目中的Log4J1升级到Log4J2,现进行下总结.交代下技术背景:web项目,基于Java + Maven 1. 依赖 <dependency> <groupId ...

  2. 3.Java日志框架slf4j、jcl、jul、log4j1、log4j2、logback大总结

    一.slf4j.jcl.jul.log4j1.log4j2.logback JUL:JDK中的日志记录工具,也常称为JDKLog.jdk-logging. LOG4J1:一个具体的日志实现框架. LO ...

  3. Log4j1.2配置详解

    Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志的输出到控制台,或者文件等等. 同时,在各大框架中也主要是使用log4j来进行日志的输出. 下面是log4j1.x版本的详细 ...

  4. log4j-1.2.6升级到log4j-2.9.0

    0.工程是普通java web工程,不是maven工程.需要升级log4j 步骤发下: 1. 在build path中 移除项目对log4j-1.2.6.jar的引用,并物理删除log4j-1.2.6 ...

  5. log4j组件的用法(log4j1)

    在实际的项目开发和维护中,日志是经常用到的一个内容.遇到问题的时候,经常需要通过日志去查出问题的所在并解决问题. 通常我们会用: System.out.println(xxx); 来打印运行中所需要的 ...

  6. slf4j、jcl、jul、log4j1、log4j2、logback大总结

    1 系列目录 jdk-logging.log4j.logback日志介绍及原理 commons-logging与jdk-logging.log4j1.log4j2.logback的集成原理 slf4j ...

  7. apache log4j-1.2.15的使用

    1.这个log4j的下载 下载 http://www.apache.org/dyn/closer.cgi/logging/log4j/1.2.15/apache-log4j-1.2.15.zip 2. ...

  8. Log4j1.x初识

    初识log4j1.x 研究源码首先要对项目要有整体的认识,这一章节主要让大家对log4j1.x有一个整体的认识,并以此为切入点,认识log4j1.x的真个框架 1 整体认识 先整体上对log4j1有一 ...

  9. Java日志框架使用技巧收集(slf4j、jcl、jul、log4j1、log4j2、logback)

    乒乓狂魔-教程: jdk-logging.log4j.logback日志介绍及原理 commons-logging与jdk-logging.log4j1.log4j2.logback的集成原理 slf ...

  10. slf4j、jcl、jul、log4j1、log4j2、logback大总结[转]

    #1 系列目录 jdk-logging.log4j.logback日志介绍及原理 commons-logging与jdk-logging.log4j1.log4j2.logback的集成原理 slf4 ...

随机推荐

  1. MySQL 之与Python相关

    一.python 操作mysql import pymysql ''' # 1.基本语法 # (1) 连接数据库 # conn = pymysql.connect(host = "ip地址& ...

  2. 设计模式课程 设计模式精讲 13-2 享元模式coding

    1 代码演练 1.1 代码演练1 1 代码演练 1.1 代码演练1 需求: 每周由随机部门经历做报告: 重点关注: a 该案例是单例模式和享元模式共同使用 b 外部传入的department是外部状态 ...

  3. MySQL实现主从复制功能

    环境说明         centos7.3.MySQL5.7 前言         MySQL安装参考之前的文章https://www.jianshu.com/p/452aa99c7476有讲解. ...

  4. JS 删除对象中指定的值

    1,通过delete删除 2,通过filter filter需要在循环的时候判断一下是true还是false,是true才会返回这个元素: let arr1 = [1,2,3]; let arr2 = ...

  5. Java 后端压缩图片

    import java.io.*;import java.util.Date;import java.awt.*;import java.awt.image.*;import javax.imagei ...

  6. C#文件过滤器filter---转载

    C#文件过滤器filter OpenFileDialog对话框的Filter属性说明: 首先说明一个示例,分析一下Filter属性的构成:“ Excel文件|*.xls ”,前面的“Excel文件”成 ...

  7. Vue 前后台交互,插件

    目录 Vuex 插件 前端存储数据汇总 前后台交互方式(重点) axios 插件 同源策略-跨域问题 前后台分离项目交互流程 异步请求细节 Element-ui 插件 jQ + Bs插件 Django ...

  8. linux vsftpd 550 create directory operation failed解决方法

    今天配置好了vsftp, 但登陆后,除了浏览,什么也干不了.(如新建文件/文件夹, 删除文件, 重命名等都不可操作) 都是弹出 "550 create directory operation ...

  9. vue 移动端屏幕适配

    https://github.com/evrone/postcss-px-to-viewport/blob/master/README_CN.md基本配置 // eslint-disable-next ...

  10. 「NOIP2012」开车旅行

    传送门 Luogu 解题思路 第一步预处理每个点后面的最近点和次近点,然后就是模拟题意. 但是如果就这么搞是 \(O(N^2)\) 的,不过可以过70分,考场上也已经比较可观了. 考虑优化. 预处理最 ...