Log4j的简单实现(commons-logging+log4j)

本文详细介绍如何在Maven项目中配置和使用Log4j进行日志记录。通过实例演示了如何设置不同级别的日志输出,并将日志信息分别输出到控制台和不同文件中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  前言:关于log4j相关的知识,网上一大堆,可是各位“大神”写的多数是代码片段,在试了一万个程序之后,运行失败。这对于小白来说打击很大,我想说写的东西整理不全面就别发出来耽误别人时间。在这写下我总结的并测试通的简单程序,以供参考。
  1.新建Maven工程,在pom.xml中引入依赖
    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.1.1</version>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
    </dependency>
    
  2.编写测试类 路径:src/main/java com.icss.lo4j.test包
    public class Log4jTest {
        private final static Log logger = LogFactory.getLog(Log4jTest.class);
        public static void main(String[] args) {
            logger.trace("This is a trace");//配置中最低级别日志打印为INFO,则这条日志不会被打印
            logger.info("This is an info");
            logger.warn("This is a warn");
            logger.error("This is an error");
            logger.fatal("This is a fatal");
        }
    }
  3.编写log4j.properties 路径:src/main/resources log4j.properties文件
    ### 设置日志输出最低级别和日志输出地 ###
    log4j.rootLogger = INFO , console , info , error
    
    ### 控制台打印日志 ###
    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} [%p]-[%c] %m%n
    
    ### 日志输出到某文件中,输出到该文件的门槛为Threshold = INFO ###
    log4j.appender.info = org.apache.log4j.DailyRollingFileAppender
    log4j.appender.info.File = E:/logs/Tst.log
    log4j.appender.info.Append = true
    log4j.appender.info.Threshold = INFO
    log4j.appender.info.layout = org.apache.log4j.PatternLayout
    log4j.appender.info.layout.ConversionPattern = %-d{yyyy-MM-dd HH\:mm\:ss} [%p]-[%c] %m%n

    ### 日志输出门槛Threshold = ERROR,Append = true表示不覆盖输出 ###
    log4j.appender.error = org.apache.log4j.DailyRollingFileAppender
    log4j.appender.error.File = E:/logs/Tst_error.log
    log4j.appender.error.Append = true
    log4j.appender.error.Threshold = ERROR
    log4j.appender.error.layout = org.apache.log4j.PatternLayout
    log4j.appender.error.layout.ConversionPattern = %-d{yyyy-MM-dd HH\:mm\:ss} [%p]-[%c] %m%n
  4.然后运行Log4jTest,可以看到各地方输出的文件信息(以后就可以改造了)
  [补充知识]:
    -> 配置日志信息输出目的地  其语法为:log4j.appender.appenderName(比如console,) = 输出目的地类的全称(五种可选)
       1.org.apache.log4j.ConsoleAppender(控制台)
       2.org.apache.log4j.FileAppender(文件)
       3.org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
       4.org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
       5.org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)


    
    
   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值