当前位置: 首页 > 知识库问答 >
问题:

Intellij Idea 终端的 Log4j2 配置

海叶秋
2023-03-14

我正在使用Java11,Spring Boot 2.4.1,Intellij创意社区版2019.2。我正在使用Log4j2,并尝试从配置文件更改控制台中日志级别log4j2.xml颜色。如果我从公共静态无效主(String[]args)运行我的应用程序,我就成功了,但是如果我从终端运行我的应用程序,使用:“mvn sping-引导:运行”,那么它就不起作用了。

我的日志4j2.xml:

<Configuration strict="true">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{DEFAULT} %highlight{%-5p}{DEBUG=blue,INFO=black,WARN=yellow} [%c{1}.%M():%L %t] [${bundle:application:spring.application.name}] %m%n"
                    disableAnsi="false" charset="UTF-8"/>
        </Console>
    </Appenders>
    <Loggers>
        <Root level="INFO">
            <AppenderRef ref="Console"/>
        </Root>
        <Logger name="com.example" level="TRACE" includeLocation="true" additivity="false">
            <AppenderRef ref="Console"/>
        </Logger>
        <Logger name="org.hibernate" level="ERROR" additivity="false">
            <AppenderRef ref="Console"/>
        </Logger>
        <Logger name="org.hibernate.SQL" level="ERROR" additivity="false">
            <AppenderRef ref="Console"/>
        </Logger>
        <Logger name="org.springframework" level="INFO" includeLocation="true" additivity="false">
            <AppenderRef ref="Console"/>
        </Logger>
    </Loggers>
</Configuration>

如果我使用公共静态无效主(String[]args)运行,我有例如DEBUG日志和单词DEBUG的颜色是蓝色:

2021 03月08日19:04:56357调试[MyApplication.logStarting():56 main][My App name]使用Spring Boot v2.4.1和Spring v5.3.2运行

如果我在终端中运行“mvn Spring-引导:运行”,则没有颜色并且日志错误:

2021-03-08 19:15:16,450 ←[34米调试←[m[MyApplication.logStarting():56 main][My App name]使用Spring Boot v2.4.1、Spring v5.3.2运行

我该如何修复它?如果您需要任何澄清,请提前告知我,谢谢!

项目结构(这是我的sanbox应用程序,我在那里训练不同的东西)。您还可以在这里看到我如何将log4j2连接到pom中的项目。xml:在此处输入图像描述

我在pom.xml中的构建部分:在此处输入图像描述

日志,如果运行公共静态无效主:在此处输入图像描述

日志,如果运行'mvn spfling-引导:运行'(2张图片):在此处输入图像描述|在此处输入图像描述

我尝试使用另一种颜色为“%-5p”的方法:

    < li >图案:<代码>

但它仍然只适用于从“main”运行,不适用于终端。

共有1个答案

党航
2023-03-14

有同样的问题!因为这只是个人喜好的问题,我不想花更多的时间寻找如何解决它(它似乎不是直接的!)

我的解决方案:

使用没有颜色的图案,并使用 IntelliJ 插件(如 Grep-Console)在 IntelliJ 中为您的日志着色。

祝你愉快:)

 类似资料:
  • 我们希望将所有java应用程序日志集中在Graylog服务器上。我们使用apache tomcat作为容器,使用log4j作为日志框架。log4j2.xml 伐木工人 日志详细信息 正如你们所见,我的应用程序与gray log server创建了一个套接字连接。但是我们在灰色日志服务器上没有看到任何日志 版本:tomcat-9.0.16.0 jdk-1.8.0_201-b09(64位) log4j

  • 最近,我决定学习如何使用log4j2记录器。我下载了所需的jar文件,创建了库,xml编译文件,并尝试使用它。不幸的是,我在console(Eclipse)中得到了这样的语句: 这是我的测试类代码: 和我的xml配置文件: 我还尝试使用不带标记的xml,以及包规范和各种文件夹/包目录,但没有帮助。现在我的文件直接位于Eclipse的project文件夹中。

  • 我正在使用log4j的现有系统上工作,我想更新到log4j2。 有一个自定义Springbean从文件加载配置。我需要保持这种方法。我不能使用"log4j.configuration文件"系统属性。 我们有一个属性文件,其中指定了当前log4j.xml的路径(NFS共享) Springbean有以下代码。。。 } 在log4j2中,没有PropertyConfiguration。如何加载log4j

  • 我试图根据文档(以及相关的SO问题)设置LOG4J,但它不会创建假定的文件,但WildFly中有这样的日志: web.xml app.war/WEB-INF/类/log4j2.xml app.war/WEB-INF/lib 你能告诉我怎么了吗?我尝试在web.xml中注释掉上下文参数,并依赖自动配置,但是没有变化。 编辑 当我添加以下代码时 失败的方式不同(我现在没有时间调查)

  • 8.4 使用配置内置终端 8.4.1 使用异步的两个方面 本章讨论的是 vim 的异步特性,其实这包含两个方面。其一如何利用 VimL 编程控制异 步任务,(写插件)实现特定的功能。前三节都是围绕这个话题的,从简单到复杂介绍了 vim 提供的三种异步机制,定时器、任务与通道。那可能有点抽象或晦涩,需要与具体的 插件功能结合起来才更好理解,但是基于本书的定位,也不便介绍与解读太复杂的插件。 其二是如

  • 我想使用新的log4j2-Java日志框架。一切正常,但我从一小时后就尝试加载一个自定义配置文件来配置日志记录(如日志级别)。 这是我的log4j2.xml: 我尝试了以下方法,但没有任何效果: 移动log4j2.xml文件,使其位于默认包中。 将log4j2.xml文件移动到项目中的任意位置 将log4j2.xml文件命名为log4j.xml 在项目中创建一个文件夹,将log4j2.xml文件放