log4j 相关问题

log4j是一种流行的基于Java的日志记录实用程序。它是Apache Software Foundation的一个项目,并根据Apache软件许可证2.0版获得许可

将动态值传递给 log4j2 xml 配置

我正在尝试使用log4j2编写一个日志模块,需要将日志以json的形式写入控制台STDOUT。 为此,我尝试使用 JSON 形式的 PatternLayout,如下所示。 我有...

回答 2 投票 0

Log4J2 属性替换 - 默认

我只是想知道是否有任何方法可以为LOG4J中的属性替换提供默认值? 我想在 java 系统属性中传递文件路径,然后将其与“${env:mySystemProperty}”一起使用。但是...

回答 2 投票 0

如何仅为特定类配置log4j2.xml日志级别?

在 log4j 中,可以按包定义日志级别,如下所示: 在 log4j 中,可以通过 package 定义日志级别,如下所示: <logger name="org.springframework.web.servlet.mvc.method.annotation" level="info"> <AppenderRef ref="CONSOLE" /> </logger> Questin:如何仅定义特定类的日志记录? (例如org.springframework.web.servlet.mvc.method.annotation.EndpointHandlerMapping)?如果我只是将其放入 <logger name 属性中,则不会再记录任何内容。 它也应该与完全限定名称一起使用。 Logger.name 不必只是包/类,但它可以是您想要的任何名称。当你调用 LoggerFactory.getLogger("MyLogger") 时,那么你必须使用 <Logger name="MyLogger" level="info"> <AppenderRef ref="CONSOLE"/> </Logger> 检查使用记录器进行包时记录的内容并使用日志中的记录器名称。 该类记录的记录器名称是什么?

回答 1 投票 0

log4j - 在文件和控制台中显示日志

我有两个附加程序,一个用于文件,另一个用于控制台。 我希望 Eclipse 控制台同时显示文件和控制台日志,但同时文件仅显示其自己的日志。 我怎么做? 我在这里...

回答 1 投票 0

LOG4J json-template-layout - 添加所有标题

我一直在尝试在标头对象下添加http标头,但我似乎无法让它按照我想要的方式使用json模板布局工作。下面的方法有效,但它还添加了所有元素...

回答 1 投票 0

单元测试:使用 Spock 或 Mockito 模拟 ThreadContext 映射实现

我的方法是在这样的Java类中...... //一些业务逻辑 字符串 userId = org.apache.logging.log4j.ThreadContext.get("userId"); //我需要使用 Spock 或 Mockit 对此进行模拟...

回答 1 投票 0

如何为 slf4j 记录器创建切面切点?

我想将字符串添加到我的所有日志中以实现此目的,我计划使用 aop,但我无法为所有记录器对象声明切点。我正在使用 slf4j 记录器,这里是一个示例日志......

回答 2 投票 0

我们如何解决 Maven 中传递性提供的依赖关系?

12月10日,log4j2中发现了一个严重漏洞(CVE-2021-44228),我被要求检测我们项目(主要是maven项目)中所有log4j用法(直接的和传递的)。我发现这是...

回答 1 投票 0

Apache poi 找不到 log4j org.apache.logging.log4j.Logger.atDebug() 的方法

当我尝试读取 Excel 文件时,此错误显示: 线程“main”中的异常 java.lang.NoSuchMethodError: org.apache.logging.log4j.Logger.atDebug()Lorg/apache/logging/log4j/LogBuilder;

回答 1 投票 0

为什么记录器名称打印不正确的类名称以及如何自定义它。?

这是我的LogUtils类的代码。我用它来格式化我的日志行。但它在那里打印了不正确的类名。如何修复它。? 导入 org.apache.commons.lang.StringUtils; 导入 org.apache.cx...

回答 1 投票 0

为什么log4j找不到配置文件

为什么Intellij Idea给出错误 log4j:WARN 找不到记录器 (org.gerosd.Manager) 的附加程序。 log4j:WARN 请正确初始化 log4j 系统。 log4j:WARN 请参阅 http://logging.apach...

回答 1 投票 0

SLF4jBridgeHandler 未拾取第 3 方日志记录,该日志记录器附加到根记录器,但随后被删除

我们的应用程序有使用 JUL 进行日志记录的第 3 方代码。我们的应用程序在类路径上有 jul-to-slf4j.jar。我看到 SLF4JBridgeHandler.install() 方法由于某种原因被调用(多次)

回答 1 投票 0

如何使用 Java 在日志文件中写入调用者位置信息,而不影响性能?

如何使用 Java 和 log4j 在日志文件中写入调用者位置信息(Java 源文件和行),而不影响性能? log4j允许你在日志文件中写入这样的信息...

回答 3 投票 0

相对路径FileNotFoundException

我在项目上创建了两个不同的java项目,依赖于其他项目 就像 A 项目和 B 项目 A 项目有日志文件夹,在 log4j.xml 中我给出了日志文件的相对路径 现在我是

回答 2 投票 0

log4j:显示方法名称的最快方法?

在我的日志消息中,我需要插入生成消息的方法的名称。我查看了 Log4J 文档以及“M”和“l”转换字符,它们也有类似“WA...

回答 4 投票 0

强制slf4j使用logback

有没有办法强制 slf4j 使用特定的日志记录提供程序(在我的例子中是 logback)?正如他们的文档中所示: 在类路径上发现多个绑定 SLF4J API 旨在与一个绑定...

回答 3 投票 0

如何仅为java spring boot项目中的某些特定日志消息添加额外的字符串或键/值对

在我的 Spring Boot 应用程序中,我们需要仅为某些特定的日志消息添加额外的标签(键/值对),以突出显示这些是一些特殊用途的日志,而不是其他日志。 项目日志...

回答 2 投票 0

Spring jdbcTemplate 卡在获取 JDBC 连接

我遇到了 spring jdbcTemplate 的问题。它曾经工作正常,但现在它不返回任何值,也不返回错误消息。我的表大小变得相当大,大约有 3500 万条记录

回答 1 投票 0

发现错误:未找到 SLF4J 提供程序。和默认无操作(NOP)记录器实现

我的日志文件未生成我在启动我的 Spring Boot 应用程序时遇到上述错误。请帮我解决。 org.springframework.boot 我的日志文件未生成我在启动我的 Spring Boot 应用程序时遇到上述错误。请帮我解决。 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.1.3</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>com.github.ulisesbocchio</groupId> <artifactId>jasypt-spring-boot-starter</artifactId> <version>3.0.4</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.squareup.okio</groupId> <artifactId>okio</artifactId> <version>3.5.0</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> </dependency> <dependency> <groupId>com.sun.mail</groupId> <artifactId>javax.mail</artifactId> <version>1.6.2</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>${servlet-api.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>${jstl.version}</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <!-- <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency> --> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.2.1-b03</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20230227</version> </dependency> <!-- <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>jdk15</classifier> </dependency> --> <dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.2.2</version> </dependency> <!-- <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> </dependency> --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.12.0</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-text</artifactId> <version>1.10.0</version> </dependency> <!-- ADDED --> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.11.0</version> </dependency> <!-- ADDED --> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <scope>runtime</scope> <version>1.5</version> </dependency> <dependency> <groupId>org.onosproject</groupId> <artifactId>jnc</artifactId> <version>1.0</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.15.2</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.15.2</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.27</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> <exclusions> <exclusion> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-jdbc</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.snmp4j</groupId> <artifactId>snmp4j</artifactId> <version>2.5.11</version> <exclusions> <exclusion> <groupId>log4j</groupId> <artifactId>log4j</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.influxdb</groupId> <artifactId>influxdb-java</artifactId> <version>2.22</version> </dependency> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.5.13</version> </dependency> <dependency> <groupId>org.glassfish.jersey.core</groupId> <artifactId>jersey-client</artifactId> </dependency> <dependency> <groupId>org.glassfish.jersey.media</groupId> <artifactId>jersey-media-multipart</artifactId> </dependency> <dependency> <groupId>org.glassfish.jersey.inject</groupId> <artifactId>jersey-hk2</artifactId> </dependency> <!-- <dependency> <groupId>org.glassfish.jersey.ext</groupId> <artifactId>jersey-spring5</artifactId> <version>2.35</version> </dependency> <dependency> <groupId>org.glassfish.jersey.core</groupId> <artifactId>jersey-common</artifactId> <version>2.35</version> </dependency> --> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>32.1.1-jre</version> </dependency> <dependency> <groupId>com.github.seancfoley</groupId> <artifactId>ipaddress</artifactId> <version>5.3.3</version> </dependency> <dependency> <groupId>com.snmp4j.smi</groupId> <artifactId>snmp4j-smi-pro</artifactId> <version>1.9.5</version> <scope>system</scope> <systemPath>${project.basedir}/lib/snmp4j-smi-pro-1.9.5.jar</systemPath> </dependency> <dependency> <groupId>com.mchange</groupId> <artifactId>c3p0</artifactId> <version>0.9.5.5</version> </dependency> <!-- spring-kafka --> <dependency> <groupId>org.springframework.kafka</groupId> <artifactId>spring-kafka</artifactId> </dependency> <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> <version>2.5.1</version> </dependency> <dependency> <groupId>org.xerial.snappy</groupId> <artifactId>snappy-java</artifactId> <version>1.1.10.1</version> </dependency> </dependencies> 我使用的是 Spring Boot 3.1.3。 log4j 的所有依赖项均已添加 但我仍然面临这个问题。尽管我尝试添加 log4j-sl4j -impl 依赖项来将 sl4j 与 log4j2 绑定。 CLI PRINTS WHEN STARTED MY APPLICATION SLF4J: No SLF4J providers were found. SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See https://www.slf4j.org/codes.html#noProviders for further details. Sep 26, 2023 7:39:23 AM org.apache.coyote.AbstractProtocol init INFO: Initializing ProtocolHandler ["https-jsse-nio-127.0.0.1-9005"] Sep 26, 2023 7:39:23 AM org.apache.catalina.core.StandardService startInternal INFO: Starting service [Tomcat] Sep 26, 2023 7:39:23 AM org.apache.catalina.core.StandardEngine startInternal INFO: Starting Servlet engine: [Apache Tomcat/10.1.12] ^C D:\consolelog\cmsnfv\cms_service\OamManager\target>MLog initialization issue: slf4j found no binding or threatened to use its (dangerously silent) NOPLogger. We consider the slf4j library not found. 尝试不排除 Spring Boot 日志记录,它具有实际的日志记录实现。只需删除以下行: <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> 正如这里所解释的那样 SLF4J只是一个Facade,你的类路径上需要一个实际的实现库

回答 1 投票 0

Maven命令mvn javadoc:jar下载log4j-1.2.12

执行Maven命令mvn javadoc:jar时,会下载log4j-1.2.12.jar,其中包含漏洞。范围内的项目对 log4j 没有任何依赖,我们也没有插件

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.