转载至:

https://blog.csdn.net/vbirdbest/article/details/71751835

如下是maven项目中的实例:

首先pom.xml中引入如下依赖,注意看都是2.××××开头的版本,所以就是log4j2需要的依赖。

  1. <!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core -->
  2. <dependency>
  3. <groupId>org.apache.logging.log4j</groupId>
  4. <artifactId>log4j-core</artifactId>
  5. <version>2.11.2</version>
  6. </dependency>
  7.  
  8. <!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-api -->
  9. <dependency>
  10. <groupId>org.apache.logging.log4j</groupId>
  11. <artifactId>log4j-api</artifactId>
  12. <version>2.11.2</version>
  13. </dependency>
  1. package com.yuanqiao.spring;
  2.  
  3. /**
  4. * 这个包的路径一定要对才行。
  5. */
  6. import org.apache.logging.log4j.LogManager;
  7. import org.apache.logging.log4j.Logger;
  8.  
  9. import org.springframework.context.ApplicationContext;
  10. import org.springframework.context.support.ClassPathXmlApplicationContext;
  11. import org.springframework.web.context.support.XmlWebApplicationContext;
  12.  
  13. import com.yuanqiao.mbean.beans.SpringPersonMBean;
  14.  
  15. public class SpringApplicationContext {
  16. static Logger logger=LogManager.getLogger("Console");
  17.  
  18. public static void main(String[] args) {
  19. logger.debug("this is the debug message");
  20. logger.info("this is the debug message");
  21. logger.error("this is the debug message");
  22. ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml");
  23.  
  24. SpringPersonMBean bean = (SpringPersonMBean)applicationContext.getBean("personMBean");
  25.  
  26. System.out.println(bean.getName());
  27. }
  28. }

  

在maven项目中的src/main/resoures下面建一个log4j2.xml文件,里面的内容如下:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <Configuration status="WARN">
  3. <Appenders>
  4. <Console name="Console" target="SYSTEM_OUT">
  5. <PatternLayout pattern="%d{YYYY-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n" />
  6. </Console>
  7.  
  8. <RollingFile name="RollingFile" filename="log/test.log"
  9. filepattern="${logPath}/%d{YYYYMMddHHmmss}-fargo.log">
  10. <PatternLayout pattern="%d{YYYY-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n" />
  11. <Policies>
  12. <SizeBasedTriggeringPolicy size="10 MB" />
  13. </Policies>
  14. <DefaultRolloverStrategy max="20" />
  15. </RollingFile>
  16.  
  17. </Appenders>
  18. <Loggers>
  19. <Root level="info">
  20. <AppenderRef ref="Console" />
  21. <AppenderRef ref="RollingFile" />
  22. </Root>
  23. </Loggers>
  24. </Configuration>

log4j2 实际使用详解的更多相关文章

  1. SpringBoot—整合log4j2入门和log4j2.xml配置详解

    关注微信公众号:CodingTechWork,一起学习进步. 引言   对于一个线上程序或者服务而言,重要的是要有日志输出,这样才能方便运维.而日志的输出需要有一定的规划,如日志命名.日志大小,日志分 ...

  2. Log4j2日志配置详解(2)

    Log4j2日志配置系列之2 1.Configuration 在应用程序代码中插入日志请求需要相当多的计划和工作.观察显示,大约4%的代码用于日志记录.因此,即使是中等大小的应用程序也会在其代码中嵌入 ...

  3. Log4j2日志配置详解(1)

    log4j与log4j不同:log4j是通过Logger的静态方法getLogger()获取Logger对象,而log4j2是通过LogManager的静态方法getLogger()获取Logger对 ...

  4. log4j2 Filter用法详解

    主要说下组合过滤器 CompositeFilter ,比较常用 <Filters> 是组合过滤器额标签,它包含的子标签是具体的过滤器,这三个具体过滤器分别是日志等级过滤器,正则表达式过滤器 ...

  5. log4j2配置文件log4j2.xml详解(转载)

    此博文转载自阿豪聊干货:https://www.cnblogs.com/hafiz/p/6170702.html 一.背景 最近由于项目的需要,我们把log4j 1.x的版本全部迁移成log4j 2. ...

  6. Log4j2配置文件详解

    目录[-] 1 系列目录 2 默认配置 3 第一个配置例子 4 复杂一点的配置 4.1 Appender之Syslog配置 4.2 Syslog及Syslog-ng相关配置(Fedora) 5 Log ...

  7. slf4j log4j logback log4j2关系详解和相关用法

    来源:slf4j log4j logback关系详解和相关用法https://www.cnblogs.com/Sinte-Beuve/p/5758971.html The Simple Logging ...

  8. Log4j2配置之Appender详解

    Log4j2配置之Appender详解 Appender负责将日志事件传递到其目标.每个Appender都必须实现Appender接口.大多数Appender将扩展AbstractAppender,它 ...

  9. Log4j2详解——XML配置详解

    Log4j2详解--XML配置详解 找到了个很详细的文章链接 https://www.jianshu.com/p/bfc182ee33db

随机推荐

  1. openssl rsa java 大于117的长字符串加密

    package org.yood.rsa.util; import org.bouncycastle.asn1.ASN1Sequence; import org.bouncycastle.asn1.p ...

  2. 学习笔记:spark Streaming的入门

    spark Streaming的入门 1.概述 spark streaming 是spark core api的一个扩展,可实现实时数据的可扩展,高吞吐量,容错流处理. 从上图可以看出,数据可以有很多 ...

  3. css flex方法标题左右两边平衡线

    <html> <div class="title"> <div class="line"></div> < ...

  4. 更改手机系统的User-Agent & okhttp

    okhttp 和 volley 1. 之前用的是volley,其中一部分功能,比如User-Agent,是系统去处理的,改成okhttp库后,这部分功能需要浏览器自己处理 2. 具体区别可以参考: h ...

  5. Linux搜索文件或内容

    1.递归搜索文件内容,如果查找"hello,world!"字符串,可以这样: grep -rn "hello,world!" * * : 表示当前目录所有文件, ...

  6. Hibernate5.3 + mysql8.0遇到的问题

    今天学习Hibernate看的是旧版本的视频Hibernate4.0版本 遇到几个新旧版本的区别. 1.方言,这个是因为SQL不是因为Hibernate 新版方言 2.将编译的类配置进congifur ...

  7. PTA1

    1-1 数组定义中,数组名后是用方括号括起来的常量表达式,不能用圆括号. (1分) [T ] F 1-2 在C语言中能逐个地使用下标变量,也能一次引用整个数组. (1分) T [F]因为它有首地址 1 ...

  8. Exp2 后门原理与实践 毛瀚逸 20164318

    Exp2 后门原理与实践 20164318 毛瀚逸 一.实验内容 基础问题回答: 1.例举你能想到的一个后门进入到你系统中的可能方式? 答:下载奇怪的文件并运行,通过操作系统的漏洞来获取电脑的高级权限 ...

  9. sklearn learn preprocessing

    train_test_split sklearn.model_selection.train_test_split(*arrays, test_size(float,int/None),#defaul ...

  10. python练习题3:N的多次方

    N的多次方 描述 编写一个程序,计算输入数字N的0次方到5次方结果,并依次输出这6个结果,输出结果间用空格分隔.其中:N是一个整数或浮点数. print()函数可以同时输出多个信息,采用如下方法可以使 ...