log4j2入门helloworld-创新互联

1.什么是log4j2

(1)log4j

log4j是apache的一个开源项目,表示log for java.是一个日志工具,可以将日志信息输出到文件,控制台等其他地方 ,还可以定义日志的输出格式,另外还有日志级别的区分,可通过配置文件去配置输出格式,输出目的地等信息.

成都创新互联公司专注于云阳企业网站建设,成都响应式网站建设公司,商城建设。云阳网站建设公司,为云阳等地区提供建站服务。全流程定制制作,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务

(2)log4j2

log4j2从名字就知道了,是log4j的升级版本,性能有了很大提升,增加了很多新特性(如自定义级别,lambda表达式)与新的API,直接与tomcat等服务器集成.

3.VScode下使用log4j2(不用Maven)

(1)准备jar包

点击这里下载
log4j2入门hello world
作者用的是win10,下载zip.

(2)准备插件

搜索安装:Eclipse New Java Project
log4j2入门hello world

(3)创建项目

ctrl+shift+p调出命令面板,输入new java project
log4j2入门hello world
项目名
log4j2入门hello world

JavaSE版本
log4j2入门hello world
创建完毕.
log4j2入门hello world

(4)设置jar包路径

在项目根路径下新建lib文件夹,把下载的
log4j2入门hello world
这两个jar包放进去.
下一步设置.classpath.
添加


(5)新建测试文件

src下直接建立test.java

test.java:

import org.apache.logging.log4j.*;

public class test
{
    private final static Logger logger = LogManager.getLogger(test.class.getName());
    public static void main(String[] args) {
        logger.info("info");
        logger.error("error");
        logger.debug("debug");
        logger.trace("trace");
        logger.fatal("fatel");
    }
}

(6)运行

点击main上的Run
log4j2入门hello world

结果:
log4j2入门hello world
输出了fatel与error信息.
另外还提示了没有找到log4j2配置文件,使用默认的配置文件,默认输出到控制台.

(7)创建配置文件使其输出更多信息

src下创建log4j2.xml配置文件.
log4j2入门hello world
log4j2的配置文件只能是.xml或.json或.jsn文件,默认会在classpath下寻找(在这里classpath相当于图中的src).
默认情况下系统选择配置文件的优先级如下:

  • 1.classpath下名为 log4j-test.json 或者log4j-test.jsn文件
  • 2.classpath下名为 log4j2-test.xml
  • 3.classpath下名为 log4j.json 或者log4j.jsn文件
  • 4.classpath下名为 log4j2.xml

这里使用log4j2.
xml.log4j2.xml如下:

    
    
      
        
          
        
      
      
        
          
        
        
          
        
      

Logger三个主要的组件为

  • logger(记录器)
  • appender(输出目的地)
  • layout(布局,定义日志的格式)

了输出目的地,表示控制台,定义了布局,里面的布局表示时间格式(%d,HH:mm:ss.SSS),接着是日志线程名(%t),%-5表示最小长度为5左对齐,level表示输出日志级别.
%logger表示输出logger名称.
%m是%msg与%message的缩写,表示输出应用提供的与记录事件有关的信息.
%n表示换行.

定义的logger与logger使用的appender.root为log默认的输出形式,如果一个类的没有明确loggers中的输出格式就会采用root的格式.

(8)再次运行

没有之前的"没有配置文件"的提示了.
log4j2入门hello world

4.VScode下使用log4j2(带Maven)

(1)创建maven项目

使用插件maven for java创建,命令面板(ctrl+shift+p)输入.
log4j2入门hello world
选择quickstart.
log4j2入门hello world
选择版本.
log4j2入门hello world
最后选择项目路径即可.
在控制台中vscode会下载相关文件,然后会提示以交互模式创建:
log4j2入门hello world
这里等一会就好了.
然后会提示输入一些值.
log4j2入门hello world
log4j2入门hello world
ok.

(2)在pom.xml配置依赖

中添加如下代码:


    org.apache.logging.log4j
    log4j-api
    2.12.1


    org.apache.logging.log4j
    log4j-core
    2.12.1

以下是完整的pom.xml:




    4.0.0

    com.example
    test
    1.0-SNAPSHOT

    test
    
    http://www.example.com

    
        UTF-8
        1.7
        1.7
    

    
        
            junit
            junit
            4.11
            test
        
        
            org.apache.logging.log4j
            log4j-api
            2.12.1
        
        
            org.apache.logging.log4j
            log4j-core
            2.12.1
        
    

    
        
            
            
                
                
                    maven-clean-plugin
                    3.1.0
                
                
                
                    maven-resources-plugin
                    3.0.2
                
                
                    maven-compiler-plugin
                    3.8.0
                
                
                    maven-surefire-plugin
                    2.22.1
                
                
                    maven-jar-plugin
                    3.0.2
                
                
                    maven-install-plugin
                    2.5.2
                
                
                    maven-deploy-plugin
                    2.8.2
                
                
                
                    maven-site-plugin
                    3.7.1
                
                
                    maven-project-info-reports-plugin
                    3.0.0
                
            
        
    

右键选择Update project configuration.
log4j2入门hello world

(3)创建log4j2.xml

在java目录下新建log4j2.xml.
log4j2入门hello world



    
        
            
        
    
    
        
            
        
        
            
        
    

(4)修改测试类

修改默认的App.java.

package com.example;
import org.apache.logging.log4j.*;
public class App
{
    private static final Logger logger = LogManager.getLogger(App.class.getName());
    public static void main( String[] args )
    {
        logger.info("info");
        logger.error("error");
        logger.debug("debug");
        logger.trace("trace");
        logger.fatal("fatel");
    }
}

(5)测试

run即可.
log4j2入门hello world
log4j2入门hello world

5.IDEA下使用log4j2(不用Maven)

(1)创建项目

什么也不用选,直接next.
log4j2入门hello world
勾选从模板创建项目.
log4j2入门hello world
选好路径与填好项目名即可.

(2)添加jar包

log4j2入门hello world
选择刚才的lib目录,或者自己手动改成两个jar包(log4j-api-版本.jar,log4j-core-版本.jar).
log4j2入门hello world

(3)新建测试类

项目结构如下:
log4j2入门hello world
Main.java

package com.test;
import org.apache.logging.log4j.*;

public class Main {

    private static final Logger logger = LogManager.getLogger(Main.class.getName());
    public static void main(String[] args) {
        logger.info("info");
        logger.error("error");
        logger.debug("debug");
        logger.trace("trace");
        logger.fatal("fatel");
    }
}

(4)新建log4j2.xml

在src下新建log4j2.xml.



    
        
            
        
    
    
        
            
        
        
            
        
    

(5)测试

直接点击run按钮.
log4j2入门hello world

6.IDEA下使用log4j2(带Maven)

(1)创建maven项目 模块

这里作者偷懒就直接在上面项目的基础上新建模块不新建项目了.
log4j2入门hello world

都不用选直接next.
log4j2入门hello world
填好GroupId与ArtifactId之后next.
log4j2入门hello world
最后选好位置.

(2)配置依赖

pom.xml中加入:


    
        org.apache.logging.log4j
        log4j-api
        2.12.1
    
    
        org.apache.logging.log4j
        log4j-core
        2.12.1
    

以下是完整的pom.xml文件



    4.0.0

    com.example
    test
    1.0-SNAPSHOT

    
        
            org.apache.logging.log4j
            log4j-api
            2.12.1
        
        
            org.apache.logging.log4j
            log4j-core
            2.12.1
        
    

右键选择同步pom.xml.
log4j2入门hello world
选择右下角弹出的提示中的Import Changes.
log4j2入门hello world

(3)创建log4j2.xml

在target下的classes下创建log4j2.xml.
log4j2入门hello world
log4j2.xml:



    
        
            
        
    
    
        
            
        
        
            
        
    

(4)创建测试类

创建包与test.java.

test.java

package com.example;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public class test {
    private static final Logger logger = LogManager.getLogger(test.class.getName());
    public static void main(String[] args) {
        logger.info("info");
        logger.error("error");
        logger.debug("debug");
        logger.trace("trace");
        logger.fatal("fatel");
    }
}

(5)测试

新建配置Application.
log4j2入门hello world

输入Main class与名字.
log4j2入门hello world
run.
log4j2入门hello world

参考:
1.log4j2(1)
2.log4j2(2)
3.log4j2(3)
4.log4j2(4)
5.log4j2(5)

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


新闻名称:log4j2入门helloworld-创新互联
文章出自:http://scyanting.com/article/dhiged.html