一招给你的log4j2日志穿件”花衣服“

记-Log4j 设置控制台打印彩色日志 记-Log4j 设置控制台打印彩色日志 一、Log4j 设置控制台打印彩色日志 Log4j 2.10版本以后,Log4j2默认关闭了Jansi(一个支持输出ANSI颜色的类库) JVM参数 -Dlog4j.skipJansi=false log4j2spring.xml <property name="LOG_PATTERN" value="%highlight{%date{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n}{F 阅读详情

概述

大家项目中打印在Console中的日志是什么样的呢?是否都是清一色的黑色字体,如下图所示,这样会导致一些关键日志信息,比如error、warn日志被忽视掉,那有什么办法可以修改Console中日志的样式,让一些关键日志能够显著的被找到?

修改Log4j2日志样式

通过修改log4j2.xml中的日志样式配置,可以打印出下图的日志,是不是很清楚。

如何做到的呢?

  1. 修改日志配置中pattern属性, 通过%style{xxxx}{styleValue1,styleValue2}和 %highlight{}可以很容易修改日志样式,下一章节详细讲解下相关样式。
%style{%d{ISO8601}}{bright,green} %highlight{%-5level} [%style{%t}{bright,blue}] %style{%C{}}{bright,yellow}: %msg%n%style{%throwable}{red}
复制代码
  1. 设置属性disableAnsi为false,表示开启Ansi,这样才会输出有样式的日志。

样式配置详解

highlight{pattern}{style}

说明: 根据当前事件的日志记录级别添加ANSI颜色。

默认颜色如下:

颜色表:

例子:

%highlight{%d [%t] %-5level: %msg%n%throwable}
复制代码

你可以在可选的{style}选项中覆盖默认颜色。例如:

%highlight{%d [%t] %-5level: %msg%n%throwable}{FATAL=white, ERROR=red, WARN=bright_blue, INFO=black, DEBUG=bright_green, TRACE=blue}
复制代码

同时也可以使用真颜色(24位)。例如:

%highlight{%d [%t] %-5level: %msg%n%throwable}{FATAL=white, ERROR=red, WARN=bg_#5792e6 fg_#eef26b bold, INFO=black, DEBUG=#3fe0a8, TRACE=blue}
复制代码

你只能突出显示日志事件的一部分:

%d [%t] %highlight{%-5level: %msg%n%throwable}
复制代码

你也可以使用STYLE键来使用预定义的一组颜色:

%highlight{%d [%t] %-5level: %msg%n%throwable}{STYLE=Logback}
复制代码

style{pattern}{ANSI style}

说明: 使用ANSI转义序列对封闭模式的结果设置样式。样式可以由下表中样式名称的逗号分隔列表组成。

样式描述
NormalNormal display
BrightBold
DimDimmed or faint characters
UnderlineUnderlined characters
BlinkBlinking characters
ReverseReverse video
Hidden
Black or FG_BlackSet foreground color to black
Red or FG_RedSet foreground color to red
Green or FG_GreenSet foreground color to green
Yellow or FG_YellowSet foreground color to yellow
Blue or FG_BlueSet foreground color to blue
Magenta or FG_MagentaSet foreground color to magenta
Cyan or FG_CyanSet foreground color to cyan
White or FG_WhiteSet foreground color to white
Default or FG_DefaultSet foreground color to default (white)
BG_BlackSet background color to black
BG_RedSet background color to red
BG_GreenSet background color to green
BG_YellowSet background color to yellow
BG_BlueSet background color to blue
BG_MagentaSet background color to magenta
BG_CyanSet background color to cyan
BG_WhiteSet background color to white

例子:

%style{%d{ISO8601}}{black} %style{[%t]}{blue} %style{%-5level:}{yellow} %style{%msg%n%throwable}{green}
复制代码

你也可以组合不同的风格:

%d %highlight{%p} %style{%logger}{bright,cyan} %C{1.} %msg%n
复制代码

您还可以将%和颜色组合,比如 %black, %blue, %cyan一起使用。例如:

%black{%d{ISO8601}} %blue{[%t]} %yellow{%-5level:} %green{%msg%n%throwable}
复制代码

总结

本文讲解了log4j2框架下如何美化你输出的日志,不过这只针对控制台输出的日志起效,文件中的日志并不生效,希望大家都用起来呀。


 

Java日志框架Log4j 2详解 这是一篇Log4j 2的详解,感兴趣的可以观看 阅读详情

相关推荐

基于log4j2搭建系统的日志记录框架

log4j2搭建日志系统 jdbc

qq_50285932的博客 1756

log4j2日志配置颜色

一、需求说明 相关环境说明:maven 3.5.0,jdk1.8 maven依赖: <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> <dependency> <groupId>org.s

u010999809的博客 1万+

Spring Boot 整合 log4j2 日志配置教程

在项目推进中,如果说第一件事是搭建 Spring 框架的话,那么第二件事情就是在 Sring 基础上搭建日志框架,此篇文章是博主在学习过程中使用 Spring Boot 搭建项目时整合 Log4j2 日志的总结共有8个级别,按照从低到高为:All < Trace < Debug < Info < Warn < Error < Fatal < OFF机制:如果一条日志信息的级别大于等于配置文件的级别,就记录All:最低等级的,用于打开所有日志记录。

m0_54851477的博客 1608

Java pyb - 第三十四天 - MyBatis - 几个可以优化的地方 - log4j日志框架 / SQL语句中的特殊符号 / jdbc.properties文件

7.1 加入log4j日志框架 在项目中加入log4j的配置文件,用于打印日志信息,便于开发调试。 在src(或相似的目录)下创建log4j.properties如下: # Global logging configuration log4j.rootLogger=DEBUG, stdout # Console output... log4j.appender.stdout=org.apache....

LawssssCat的博客 488

ASF-YOLO:一种基于注意尺度序列融合的细胞实例分割YOLO模型

随着样本制备技术和显微成像技术的快速发展,细胞图像的定量处理和分析在医学、细胞生物学等领域发挥着重要作用。基于卷积神经网络(CNN),可以通过神经网络训练学习不同细胞图像的特征信息,具有很强的泛化性能。两阶段的R-CNN系列[1,2,3]及其一阶段变体[4,5]是实例分割任务的经典CNN基础框架。在最近的研究中,You Only Look Once(YOLO)系列[6,7,8,9]已经成为实时实例分割中速度最快、最准确的模型之一。

m0_47867638的博客 9808

STM32 HAL库驱动BMP388:从寄存器配置到高精度气压温度采集

本文详细介绍了如何使用STM32 HAL库驱动BMP388气压温度传感器,实现高精度数据采集。内容涵盖从硬件连接到STM32CubeMX配置、关键寄存器解析、驱动源码编写,到核心补偿算法与海拔换算的完整流程,并提供了针对不同应用场景的优化配置与调试技巧,帮助开发者快速构建稳定可靠的测量方案。

weixin_29299807的博客 171

springboot log4j2配置参考-highlight-IDE控制台彩色日志

导读 查看log4j官方样式说明,其中highlight相关说明如下图 查看ANSI COLOR NAME,如下图所示 关于windows下highlight不生效的问题说明 解决方法很简单,一个字:disableAnsi=“false” 开始配置 step1 maven add log4j2 and exclude logback或log4j <dependency> <groupId>org.springframework.boot</groupI

dixialieren的专栏 3666

ArcGIS基础:城市交通网络构建及设施服务分析(一):道路数据处理与拓扑操作

首先需要加载数据, 1:选择这个数据库:,右键导入,选择导入单个要素,弹出“要素类至要素类” 2:输出位置(导入的数据是CAD格式数据)。 3:输出要素类为道路。 4:字段只保留道路类型字段。 这个操作是分类合并各级道路数据。 1:通过属性选择各类道路数据。 2:比如此类都是“干道”。 3:编辑器下来,然后合并即可。 得到如图所示,需要用到三个字段。 上面这个操作是打断道路相交线。 1:选中所有数据。 2:找到高级编辑中的打断相交线。 3:确定即可。 下面进行拓扑检查,虽然我们已经进行合并和打断相交.

yuanYW7556的博客 2万+

4.IDEA配置log4j2实现输出SQL语句

4.IDEA配置log4j2实现输出SQL语句 一、在pom.xml文件中导入log4j2的依赖 <!-- log4j2日志 --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-web</artifactId> <version

小曹同学的博客 1841

AGV、RGV、四向车openTCS调度系统(三)车辆适配器解读,封装自己的适配器

AGV、RGV、四向车调度。理解适配器的整体作用,以及如何使用官方例子改造自己的适配器,

要这头发有何用 3613

Matlab双目相机标定

1 概述 现在有许多双目相机在出厂时就已经标定好了,用户拿到手后可以直接使用,例如Intel Realsense系列。但是有些相机出厂的时候并没有完成标定工作,因而这个时候就需要我们自己来标定。由于笔者曾改装过一个双目相机,最远可以测至50m,因此有一定的心得体会想给大家分享一下。本文主要介绍双目相机标定的整个过程,以及导出标定数据的方法。 相机标定主要分为手动标定和自动标定,手动标定比较繁琐,这里主要介绍基于matlab工具箱的自动标定方式来对双目相机进行标定。具体的相关标定细节也可以参照这篇博客:m

weixin_46133643的博客 2万+

日志框架log4j升级至log4j2

大家好,我是默语,擅长全栈开发、运维和人工智能技术。在这篇博客中,我将详细介绍如何将日志框架从Log4j升级到Log4j2,确保在项目中实现更高效、更安全的日志管理。关键词:Log4j2升级、日志框架、Java日志、SLF4J、Log4j2配置。升级步骤具体操作删除Log4j核心包注释Log4j依赖,并排除第三方包引入的Log4j引入Log4j2和SLF4J桥接包添加Log4j2核心包和SLF4J与Log4j2的桥接包修改日志打印代码使用SLF4J的LoggerFactory进行日志打印。

沉淀所学,分享所思,让热爱与成长同行。商务记录AI实战经验,助力开发者快速成长。 热爱AI,希望做出有影响力的技术成果。 技术点亮生活,分享连接价值与机会。 专注AI落地实战,陪你走好技术每一步。 6万+

蓝牙AoA技术详解:厘米级定位原理与应用

蓝牙AoA(Angle of Arrival)是一种基于信号到达角度测量的高精度定位技术,通过天线阵列和相位差计算实现亚米级定位。相比传统蓝牙RSSI定位,AoA技术将精度提升至0.1-0.5米范围,适用于工业自动化和商业空间等场景。其核心在于支持连续载波相位检测和IQ采样的蓝牙芯片,结合三角测量算法实现精确定位。随着蓝牙5.1标准的普及,AoA技术正成为室内定位领域的热门解决方案,特别是在需要厘米级精度的AGV调度和智能零售等应用中展现出巨大潜力。

weixin_29185199的博客 197

SpringBoot中日志的使用log4j2

SpringBoot中日志的使用log4j2

YIYIYI 4022

agent-browser 安装笔记(OpenClaw)

【代码】agent-browser 安装笔记(OpenClaw)

tiantiantbtb的博客 1243

大模型驱动电费核算智能升级:从人工调参到智能进化的规则优化新范式

大模型技术为电费核算规则优化提供了全新的解决方案,通过构建数据驱动的规则智能优化闭环,实现了从人工调参到智能进化的规则优化新范式。这一解决方案不仅有效提高了电费核算的效率和准确性,还降低了人工成本,提升了客户满意度。随着大模型技术的不断发展和应用,电费核算业务将迎来更加智能化、高效化的未来。

getusushu的博客 36

常用日志框架Log4j,Logback,Log4j2性能比较与日志门面SLF4J简介

文章目录常用日志框架Log4jLogbackLog4j 2Log4j1/Logback/Log4j2性能比较日志门面SLF4J 常用日志框架 Log4j Log4j是Apache的一个Java的日志库,通过使用Log4j,我们可以控制日志信息输送的目的地(控制台、文件、数据库等);我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。 Logbac...

ThinkWon的博客 1万+

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

log4j2配置日志

Apache Log4j 2是日志框架Log4j的升级,它比其前身Log4j 1.x提供了重要的改进,并且参考了Logback中许多有用的改进,同时修复了Logback的一些固有问题。本文事例中configuration下有三个节点properties:配置文件中用到的参数设定、被下面的appenders、loggers配置项引用appenders:日志的输出源:设置日志输出目的地,内容和格式等。loggers:日志的输入源:设置日志级别和使用的Appenders。</</

qq_40419080的博客 2719

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

springboot 日志管理之 log4j2

log4j2 日志框架详解,一文让你轻松学会 log4j2 的使用。

m0_52542073的博客 6029

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Mybatis日志配置(slf4j、log4j、log4j2)

本文详细的介绍了mybatis日志的相关配置,包括日志门面与日志实面!!!

一个很懒的人 1万+

集成Log4j2以及异步日志

文章目录1.环境搭建1.在sunrays-common下创建一个单独的模块2.依赖关系1.继承父模块的版本和通用依赖3.创建自动配置相关1.目录2.pom.xml3.Log4j2AutoConfiguration.java 自动配置类4.META-INF/spring.factories 指定自动配置类2.集成Log4j2以及异步日志1.目录2.引入依赖3.log4j2.xml4.log4j2.component.properties 开启全局异步日志5.maven下载到本地仓库3.测试1.创建一个demo

Sun的个人博客 2250

log4j2实现日志输出

Log4j2是一个功能强大的日志框架,它可以帮助我们轻松地记录和管理应用程序的日志信息。在Spring Boot应用程序中使用Log4j2也非常简单,只需要在项目中添加Log4j2的依赖和配置文件,然后在代码中使用Logger对象输出日志即可。在实际开发中,我们可以根据自己的需要定制Log4j2的日志输出格式和级别,以满足不同的需求。同时,我们也需要注意日志输出的性能问题,避免在高并发场景下过多地输出日志信息,从而影响应用程序的性能。

YXXXYX的博客 5355

【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板

SLF4J(Simple Logging Facade for Java)是一个日志框架的抽象层,可以与不同的日志实现进行绑定。它允许开发人员在代码中使用统一的日志接口,而无需关心具体的日志实现。简单来讲就是slf4j是一系列的日志门面,也可以理解为 是接口,而 和 是具体实现了这些接口的日志框架,slf4j 具备很高的易用性和很好的抽象性。Logback是Log4j的后继版本,由Log4j的作者开发。相比Log4j,Logback具有更好的性能和更丰富的功能,同时也更易于配置和扩展。Logback是

实用技术干货分享⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄对您有用的话请点个关注吧~ 2269

SpringBoot配置log4j2日志及输出到文件中

文章目录一、java.util.logging、log4j、slf4j的区别二、配置日志三、指定输出文件1.如果只是使用默认的logback ,只需要在application.properties中配置2. 使用log4j 一、java.util.logging、log4j、slf4j的区别 java.util.logging java自带的日志实现类 log4j 比java.util.loggi...

赖胖子的博客 9910
上一篇: 2022年Java核心面试题全解析
下一篇: SpringBoot 优雅地实现文件的上传和下载
java小姜在线冲
博客等级 码龄4年 53粉丝 137原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值