log4j 2 的相关配置(亲自爬坑)

2023-05-16

第一步: 官网下载安装包

Apache官网镜像: http://mirrors.tuna.tsinghua.edu.cn/apache/logging/log4j/2.12.0/apache-log4j-2.12.0-bin.zip

第二步 导包到项目

下载的log4j 2中的jar包非常多,读者根据自己情况导包,不要全部导入,引用包时会增加困扰
作者写的一个小项目,所以只导了两个jar包

log4j-api-2.12.0.jar
log4j-core-2.12.0.jar

第三步 配置log4j2.xml

建议直接放在src文件下
这个强烈建议自己看懂xml,网上博主讲解的资源很多(广泛撒网,重点收获)
这里放上作者自己的配置(附注释)

<?xml version="1.0" encoding="UTF-8"?>
<configuration status="error">
    <!--定义所有的输出配置-->
    <appenders>
        <!--输出到控制台的配置-->
        <Console name="Console" target="SYSTEM_OUT">
            <!--输出level及以上级别的信息(onMatch)-->
            <!--其他的直接拒绝(onMismatch)-->
            <ThresholdFilter level="debug" onMatch="ACCEPT" onMismatch="DENY"/>
            <!--输出日志的格式-->
            <PatternLayout pattern="%d{HH:mm:ss.SSS}  %-5level  %class{36}  %L %M ==>  %msg%xEx%n"/>
        </Console>

        <!--输出到文件,每次运行程序会自动清空-->
        <!--由append属性决定-->
        <File name="log" fileName="log/log.log" append="false">
            <ThresholdFilter level="all" onMatch="ACCEPT" onMismatch="DENY"/>
            <PatternLayout pattern="%d{HH:mm:ss.SSS}  %-5level  %class{36}  %L %M ==>  %msg%xEx%n"/>
        </File>

        <!--输出到文件(不会被清空,一直记录)-->
        <!--按年份-月份建立的文件夹下面并进行压缩,作为存档-->
        <RollingFile name="RollingFile" fileName="logs/app.log"
                     filePattern="log/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
            <PatternLayout pattern="%d{yyyy-MM-dd 'at' HH:mm:ss z} %-5level %class{36} %L %M - %msg%xEx%n"/>

            <!--滚动日志策略,规定什么时候新建一个文件-->
            <Policies>
                <!--时间规定,超过新建一个文件-->
                <!--interval表示一小时的间隔,默认为一小时-->
                <TimeBasedTriggeringPolicy interval="24" modulate="true" />
                <!--每次大小超过size,则这size大小的日志会自动存入-->
                <SizeBasedTriggeringPolicy size="50MB"/>
            </Policies>
        </RollingFile>

    </appenders>

    <!--定义logger-->
    <!--只有定义了logger并引入的appender,appender才会生效-->
    <loggers>
        <!--执行Console的配置-->
        <logger name="test" level="debug">
            <appender-ref ref="Console"/>
        </logger>
        <!--建立一个默认的root的logger-->
        <root level="debug">
<!--            <appender-ref ref="Console"/>-->
<!--            <appender-ref ref="log"/>-->
<!--            <appender-ref ref="RollingFile"/>-->
        </root>
    </loggers>
</configuration>

第四步 代码中引入

导包一定要正确,导入下面这个jar包里面的Logger

log4j-api-2.12.0.jar

用就一句代码

// 创建logger对象
private static Logger logger = LogManager.getLogger("test");
// 调用内置方法
logger.debug("hello world");

第五步 自信满满测试代码

然后…

ERROR StatusLogger Log4j2 could not find a logging implementation. Please add log4j-core to the classpath. Using SimpleLogger to log to the console…

甩了我一条ERROR,抽得我脸痛

然后参考下面的博主的方法,解决ERROR

https://www.cnblogs.com/moonpool/p/6548266.html

在项目中新建一个log4j2.component.properties文件
然后填上参数

# 更改log4j 2的系统参数
log4j2.loggerContextFactory=org.apache.logging.log4j.core.impl.Log4jContextFactory
# 填上log4j2.xml的相对路径
log4j.configurationFile=./log4j2.xml

然后再run一次项目

成功使用log4j 2

附上作者成功效果图

成功效果图

参考文献

https://www.cnblogs.com/moonpool/p/6548266.html

原创文章,转载标注

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

log4j 2 的相关配置(亲自爬坑) 的相关文章

  • Linux开启ssh远程登录

    Linux配置ssh 开启远程登录 你好 xff01 这里介绍了Linux系统Centos Ubuntu环境下开启ssh的方法 一 CentOS开启SSH服务 安装openssh server xff1b yum list installe
  • Python 中if...else语法和作用、执行流程

    一 if else语法 作用 xff1a 条件成立执行if下方的代码 xff0c 条件不成立执行else下方的代码 案例说明 xff1a 比如拿成年网吧上网的例子 xff0c 如果成年 xff0c 就允许上网 xff0c 如果不成年 xff
  • Ubuntu20.04安装ssh并开启远程访问登录

    1 安装openssh server 打开终端安装openssh server软件包 xff1a span class token function sudo span span class token function apt span
  • pixhawk在启动jmavsim时,启动不了

    lcg 64 ubuntu src Firmware sudo make px4 sitl jmavsim 1 1 cd home lcg src Firmware build cg src Firmware build px4 sitl
  • 数据转换成tfrecord类型并完成读取

    前提 xff1a tensorflow 1 13 1 numpy 1 16 2 python 3 6 5 本例转换 泰坦尼克号数据集 链接 密码 xff1a n8wz 数据预览 xff1a 字段说明 xff1a PassengerId xf
  • Notepad++如何配置NppFTP连接FTP服务器远程编辑

    Notepad 43 43 是很强大的文本编辑工具 xff0c 通过NppFTP插件可以远程连接FTP服务器 xff0c 实现文件的在线编辑 不需要FTP下载文件后再进行编辑 xff0c 配置好与FTP服务器的连接后 xff0c 使用起来会
  • Ubuntu install Chrome

    wget https dl google com linux direct google chrome stable current amd64 deb sudo dpkg i google chrome stable current am
  • 简易输出六十天干地支

    每行十个输出六十天干地支 public static void main String args int i 61 0 count 61 0 step 61 0 String top 61 34 甲 34 34 乙 34 34 丙 34 3
  • 小记:Xshell 简单STP上传下载文件

    小记 xff1a Xshell 简单STP上传下载文件 目录 xff1a 1 Xshell连接远程系统 2 STP连接 3 put get上传下载文件 工具说明 xff1a 本地Windows 10系统 远程Linux系统 xff1a Ce
  • info函数与describe函数

    info 函数与describe 函数 一 xff0c info 函数 功能 xff1a 给出样本数据的相关信息概览 xff1a 行数 xff0c 列数 xff0c 列索引 xff0c 列非空值个数 xff0c 列类型 xff0c 内存占用
  • 快速排序(java代码)

    文章目录 一 快排核心思想二 实例三 代码实现 xff08 java xff09 一 快排核心思想 快排核心思想就是 xff1a 首先在待排序数组中随便选择一个数作为节点 xff08 pivot xff09 xff0c 然后从最后面 xff
  • C# List集合查找删除指定数据

    C List集合查找删除指定数据 文章目录1 实体类2 操作第一个负荷条件数据3 操作所有符合条件数据4 优质源码 文章目录 1 实体类 public class FaultLevelModel public string LBWJ get
  • java.lang.IllegalArgumentException: Unable to instantiate factory class

    前提 xff1a 这两天在搭springboot后台框架的时候 xff08 用的JDK1 8和eclipse xff09 xff0c 折腾了半天 xff0c 在搞泛型的时候会有一些报错 xff0c 原来IDEA上的代码 xff0c 在ecl
  • 发声单元的原理/扬声器的工作原理

    目前市面上常见的耳塞以及耳机的发声单元主要有三种 xff0c 分别是动圈单元 动铁单元和静电单元 静电单元由于工艺比较复杂 成本高 xff0c 单元本身比较脆弱 xff0c 所以市面上并不多见 所以下面着重介绍动圈单元和动铁单元的发声原理
  • 猿创征文|Hexo+Github搭建完全免费个人博客详细教程

    前言 完全免费的搭建个人博客 xff0c 没有任何收费 xff0c 零基础也能上手 xff0c 不需要编程基础 xff0c 跟着操作来即可 首先 xff1a 要了解一下我们搭建博客要用到的框架 xff1a Hexo是高效的静态站点生成框架
  • 3维向量的点乘叉乘运算

    目录 三维向量的点乘三维向量的叉乘点到直线的距离点到平面的距离 三维向量的点乘 点乘得到的是对应元素乘积的和 xff0c 是一个标量 xff0c 没有方向 V1 x1 y1 z1 V2 x2 y2 z2 61 x1x2 43 y1y2 43
  • Windows Server 2016修改Administrator的密码

    1 xff09 在仪表盘上 xff0c 点击 工具 菜单 xff0c 选择 计算机管理 子菜单 2 xff09 本地用户和组 gt 用户 选中Administrator xff0c 点击右键 xff0c 弹出的菜单中选择 设置密码 的子菜单
  • Ubuntu安装Tomcat 执行[./startup.sh]命令显示“ Permission denied “问题解决

    报错贴图 xff1a 根据错误提示 xff0c 为权限问题 然后我们检查权限情况 xff1a 方框中为管理员权限 xff0c 显示为rw r代表read xff08 读 xff09 xff0c w代表write xff08 写 xff09
  • 2021年7月1日:AndroidStudio集成opencv指南。

    版本声明 xff1a 1 AndroidStudio 4 2 1 2 opencv版本4 5 2 3 androidStudio创建项目选择项目类型Native C 43 43 4 下载opencv android版本解压后 xff0c 找
  • Redis(十) 布隆过滤器

    速记 为什么使用布隆过滤器 xff1f 1 为了省内存 xff0c 提高速率 2 因为1所以布隆过滤器不需要百分百正确 3 说存在不一定存在 xff0c 说不存在一定不存在 4 在解决缓存穿透的问题时 xff0c 拦截了大部分的请求 xff

随机推荐

  • Docker学习笔记(九)---DockerFile

    DockerFile 文章目录 DockerFileDockerFile介绍DockerFile构建过程基础知识 DockerFile的指令实战测试CMD 和 ENTRYPOINT 区别 Docker其他学习笔记 DockerFile介绍
  • 【使用multipart/form-data方式传递MultipartFile参数,实现服务间文件的传递】

    目录 一 代码实现二 MultipartFile工具类三 HttpClient使用四 参考链接 一 代码实现 1 A服务接收前端上传文件并发送至B服务 引入依赖 lt dependency gt lt groupId gt org apac
  • JSP中JavaBean的应用:计算三角形或者梯形的面积

    计算三角形或者梯形的面积 1 jsp页面的编写 页面部分包含一个表单 xff0c 这个表单有一个提供选择的图形的下拉列表 xff0c 三个输入框分别输入三角形的三条边或者是梯形的上底 下底和高 xff0c 一个计算的提交按钮 在页面中还应该
  • ubuntu22虚拟机设置中文(亲测有效)

    1进入 虚拟机 找到设置 2 进入设置找到区域和语言并切换为Chinese xff0c 再点击select 3 再点击管理已安装语言 xff0c 弹框再点击添加或删除语言 xff08 记得点击应用到整个系统 xff09 4 在里面找到中文语
  • JDK环境配置

    JDK环境配置 xff08 注 xff1a 安装jdk和jre的时候把两个文件夹都放在同一目录下 xff0c 如 xff1a 放在 D Program Files Java xff09 1 右键点击此电脑 xff0c 选择属性 xff0c
  • 复合语句和流程控制

    复合语句 在MariaDB 10 1 1 43 版本中 xff0c 我们可以在存储过程以外来使用复合语句了 xff0c 顾名思义 xff0c 复合语句就是将多条语句作为一个整体来执行 xff0c 可以在其中使用一些逻辑判断 xff0c 循环
  • C++函数篇之求某个范围中素数的和

    1 案例 输入两个正整数m和n xff0c 求m到n之间 xff08 包括m和n xff09 所有素数的和 要求定义并调用 函数isprime xff08 x xff09 来判断x是否为素数 2 思路 主函数编写 函数的编写 xff1a 素
  • mybatis报错Error attempting to get column ‘id‘ from result set. Cause: org.postgresql.util.PSQLExcept

    mybatis报错Error attempting to get column id from result set Cause org postgresql util PSQLException Bad value for type in
  • Caused by: java.sql.SQLException: Expression #1 of ORDER BY clause is not in SELECT list, reference

    在公司出现以下Bug问题 所以开始研究为什么会出这个问题 找到网上说先执行这个命令 打开mysql客户端 输入 select 64 64 global sql mode 查询出来的信息长这个样子 ONLY FULL GROUP BY STR
  • unbutu 18.04 循环登录报错

    1 报错 dev sda2 clean 问题描述 先同时按下 Ctrl 43 Alt 43 F1 xff08 F1 F6其中一个就可以 xff09 进入命令行模式 然后输入用户名 xff0c 回车 xff0c 输入密码 xff0c 回车 x
  • Rockchip Android13平台提取kernel环境编译KO

    Rockchip Android13平台提取kernel环境编译KO 当需要给第三方提供kernel的ko编译环境时 xff0c 又不想提供完整的kernel源码 xff0c 则可以对kernel进行裁剪提取出最小的编译环境和编译器提供给第
  • Ubuntu20.4系统隐藏顶栏

    注 xff1a Ubuntu20 4以上版本安装gnome tweak tool可以实现隐藏顶栏了 xff0c 但20 4还需要安装一下扩展模块 xff0c 教程如下 xff1a 在Ubuntu中有两个扩展工具都支持隐藏顶栏 1 安装aut
  • 生产者详解-启动流程

    文章目录 生产者详解生产者概述生产者高可用客户端保证Broker端保证 生产者源码解析生产者类生产者启动流程 生产者详解 生产者概述 发送消息的一方被称作生产者 RocketMQ客户端中的生产者有两个独立的实现类 xff1a org apa
  • Mybatis Plus的理解与应用

    前言 mybatis plus是一个mybatis的增强工具 xff0c 在其基础上只做增强不做改变 作为开发中常见的第三方组件 xff0c 学习并应用在项目中可以节省开发时间 xff0c 提高开发效率 官方文档地址 xff1a MyBat
  • V1-01-02 FusionComputer简介

    文章目录 一 FusionComputeFusionComputer组件的作用 虚拟化是云计算重要的组成部分 云计算接管虚拟化 xff0c 做成资源池给用户使用 FusionSphere是华为自主知识产权的云操作系统 xff0c 集虚拟化平
  • Docker 镜像概念及操作

    Docker 专栏文章索引 x1f449 Docker 简介 x1f449 Docker 安装图文教程 x1f449 Docker 镜像概念及操作 x1f449 Dockerfile 深入理解 Docker 镜像及操作 x1f7e7 1 镜
  • java正则匹配Matcher类的matches()、lookingAt()和find()和String类的matches()使用

    String类的matches 使用 matches 方法为全局匹配 xff0c 如果正则能把整个字符串匹配上则返回true xff0c 否则返回false span class token class name String span v
  • localhost拒绝访问的解决方法

    打开 我的电脑 xff0c 选择左上角的 计算机 中的 卸载或更改程序 点击 启用或关闭Windows功能 点击选中 Internet Information Service 及其下的 FTP服务器 确定 xff0c 然后浏览器验证 xff
  • Angular过滤器之将普通文本转为HTML

    代码如下 xff1a app span class token punctuation span span class token function filter span span class token punctuation span
  • log4j 2 的相关配置(亲自爬坑)

    第一步 xff1a 官网下载安装包 Apache官网镜像 http mirrors tuna tsinghua edu cn apache logging log4j 2 12 0 apache log4j 2 12 0 bin zip 第