1.Log4j提供的appender有以下几种:
org.apache.log4j.ConsoleAppender(控制台),
org.apache.log4j.FileAppender(文件),
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方),
org.apache.log4j.jdbc.JDBCAppender(将日志保存到数据库)

2.添加依赖:

<dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.25</version>
</dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId><version>1.7.25</version>
</dependency>

3.在源码根路径下添加文件log4j.properties:

常用配置方式1(输出到控制台,并输出INFO级别及以上的日志到指定文件):

### set log levels ###
log4j.rootLogger = INFO,CONSOLE,I### CONSOLE
log4j.appender.CONSOLE = org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Target = System.out
log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%t] [%c] [%p] %m%n### I
log4j.logger.I = INFO,I
log4j.appender.I.Append = true
log4j.appender.I = org.apache.log4j.RollingFileAppender
log4j.appender.I.File = D://logs/log.log
log4j.appender.I.MaxFileSize=10MB
log4j.appender.I.MaxBackupIndex=10
log4j.appender.I.layout = org.apache.log4j.PatternLayout
log4j.appender.I.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%t] [%c] [%p] %m%n

常用配置方式2(输出到控制台,并输出DEBUG级别及以上的日志到指定文件,输出ERROR级别及以上的日志到指定文件):

### set log levels ###
log4j.rootLogger = DEBUG,CONSOLE,D,E### CONSOLE
log4j.appender.CONSOLE = org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Target = System.out
log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%t] [%c] [%p] %m%n### D
log4j.logger.D = DEBUG,D
log4j.appender.D.Append = true
log4j.appender.D = org.apache.log4j.RollingFileAppender
log4j.appender.D.File = D://logs/Dlog.log
log4j.appender.D.MaxFileSize=10MB
log4j.appender.D.MaxBackupIndex=10
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%t] [%c] [%p] %m%n### E
log4j.logger.E = ERROR,E
log4j.appender.E.Append = true
log4j.appender.E = org.apache.log4j.RollingFileAppender
log4j.appender.E.File = D://logs/Elog.log
log4j.appender.E.MaxFileSize=10MB
log4j.appender.E.MaxBackupIndex=10
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%t] [%c] [%p] %m%n

常用方式3(输出到控制台,并输出DEBUG级别到指定文件,输出INFO级别到指定文件,输出ERROR到指定文件):

### set log levels ###
log4j.rootLogger = DEBUG,CONSOLE,D,I,E### CONSOLE
log4j.appender.CONSOLE = org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Target = System.out
log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%t] [%c] [%p] %m%n### D
log4j.logger.D = DEBUG,D
log4j.appender.D.Append = true
log4j.appender.D = org.apache.log4j.RollingFileAppender
log4j.appender.D.File = D://logs/Dlog.log
log4j.appender.D.MaxFileSize=10MB
log4j.appender.D.MaxBackupIndex=10
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%t] [%c] [%p] %m%n
log4j.appender.D.filter.infoFilter = org.apache.log4j.varia.LevelRangeFilter
log4j.appender.D.filter.infoFilter.LevelMin=DEBUG
log4j.appender.D.filter.infoFilter.LevelMax=DEBUG### I
log4j.logger.I = INFO,I
log4j.appender.I.Append = true
log4j.appender.I = org.apache.log4j.RollingFileAppender
log4j.appender.I.File = D://logs/Ilog.log
log4j.appender.I.MaxFileSize=10MB
log4j.appender.I.MaxBackupIndex=10
log4j.appender.I.layout = org.apache.log4j.PatternLayout
log4j.appender.I.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%t] [%c] [%p] %m%n
log4j.appender.I.filter.infoFilter = org.apache.log4j.varia.LevelRangeFilter
log4j.appender.I.filter.infoFilter.LevelMin=INFO
log4j.appender.I.filter.infoFilter.LevelMax=INFO### E
log4j.logger.E = ERROR,E
log4j.appender.E.Append = true
log4j.appender.E = org.apache.log4j.RollingFileAppender
log4j.appender.E.File = D://logs/Elog.log
log4j.appender.E.MaxFileSize=10MB
log4j.appender.E.MaxBackupIndex=10
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%t] [%c] [%p] %m%n
log4j.appender.E.filter.infoFilter = org.apache.log4j.varia.LevelRangeFilter
log4j.appender.E.filter.infoFilter.LevelMin=ERROR
log4j.appender.E.filter.infoFilter.LevelMax=ERROR

Java Servlet 使用slf4j配置log4j相关推荐

  1. Java日志框架SLF4J和log4j以及logback的联系和区别

    1.SLF4J(Simple logging Facade for Java) 意思为简单日志门面,它是把不同的日志系统的实现进行了具体的抽象化,只提供了统一的日志使用接口,使用时只需要按照其提供的接 ...

  2. Java日志系统概述SLF4J、log4j、JCL、Logback

    java日志系统经常遇到SLF4j,JCL,logback,log4j2等等.一些人可能要晕了怎么选择,这里简单说下. 发展 这些都要从Java日志框架的元老log4j说起.java1.3之前打日志都 ...

  3. Java Servlet web xml 配置详解

    要从浏览器访问Java servlet,必须告诉servlet容器要部署哪些servlet以及要将servlet映射到哪个URL. 这是在Java Web应用程序的web.xml文件中完成的. ### ...

  4. java日志框架JUL、JCL、Slf4j、Log4j、Log4j2、Logback 一网打尽

    为什么程序需要记录日志 我们不可能实时的24小时对系统进行人工监控,那么如果程序出现异常错误时要如何排查呢?并且系统在运行时做了哪些事情我们又从何得知呢?这个时候日志这个概念就出现了,日志的出现对系统 ...

  5. slf4j 和 log4j合用的(Maven)配置

    简述: 添加logger的日志输出,下面是配置信息供备忘 步骤: 1. 在Maven的porn.xml 文件中添加dependency如下 [html] view plaincopy <depe ...

  6. Java日志框架Slf4j+Log4j入门

    一.日志系统介绍 slf4j,即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统.简答的讲就是slf4j是一系列的日志 ...

  7. slf4j 和 log4j的关系及合用Maven配置

    最近因为项目实在是太忙,都没有时间学习.有时候会很矛盾,一方面是全心全意的想去快速做完项目,一方面又想学习点新东西.这样导致这两三个月都没有去学习一些新的东西,这周我开始创建自己的maven项目,因为 ...

  8. 1.Slf4j使用log4j的配置参数、配置sl4j/log4j输出到不同的文件、案例

    1.Slf4j使用log4j的配置参数 转自:https://blog.csdn.net/yx0628/article/details/83214387 slf4j,即简单日志门面(Simple Lo ...

  9. servlet配置log4J

    用Spring配置Log4j比较简单.但是servlet配置的时候会因为项目启动后没加载log4j而报错 这篇随笔就主要处理这些. 第一步:导入jar包,在src目录下创建src/log4J.prop ...

最新文章

  1. Java学习总结:19
  2. 笔记-高项案例题-2018年下-项目管理-项目集管理-项目组合管理
  3. 勒索软件防不胜防? 要先从了解它开始
  4. 麦克纳姆轮全向移动机器人运动模型及应用分析
  5. 手机按三角返回页面上一页_小猿圈微信小程序跳转页面都有哪些?
  6. 微信终于良心一回,更新了语音识别功能可识别粤语,广东人有福了
  7. java 并发容器类实验_Java多线程并发编程中并发容器第二篇之List的并发类讲解...
  8. 【语音识别】基于matlab动态时间规整(DTW)孤立字语音识别【含Matlab源码 573期】
  9. def __init__(self)是什么意思_一文搞懂什么是Python的metaclass
  10. mysql mm keeplive_mysql +keeplive
  11. PTA 7-6 2048游戏模拟(1)--单行向左移动叠加
  12. 六祎-简单的排版表(python)
  13. 周董演唱会为什么总是抢不到票?教你用Python做一个自动抢票脚本
  14. kk5.0 服务器信息,关于KK问题整理汇总,这个可以收藏!
  15. 计算机硬件技术心得,计算机硬件技术基础学习心得.doc
  16. 程序员的13个外包接私活网站,你有技术就有钱!
  17. 关于My Sql如何导入数据
  18. 我们是科幻迷(刘慈欣)
  19. ③⭐全网首发☀️数据有道之数据库技术❤️干货大全【持续更新】❗❗❗
  20. 创新实训(1)——小组成员初步讨论,进行小组分工,明确项目范围项目范围

热门文章

  1. 遍历QListWidget的item
  2. Pango Reference Manual 【文本和字体处理函数库】
  3. html 显图片宽度100,HTML – 如何显示内联几个 100%宽度?
  4. java 微信企业号上传文件_微信企业号上传下载多媒体文件接口详解演示-java
  5. 电脑太慢了最简单的办法怎么弄_电脑感染病毒的10种症状及简单处理办法 电脑中病毒的症状介绍...
  6. python 基础列表解析(十八)
  7. 环境搭建创建一个javaweb+maven+Jfinal项目
  8. linux修改文件权限的命令_Linux基础文件权限管理
  9. linux运维解决ddos,运维人员该如何排查并解决DDOS攻击
  10. css随机数,在LESS CSS中生成随机数?