log4j2 相关问题

Log4j 2是Log4j的升级版,Log4j是一个基于Java的日志记录实用程序,它比其前身Log4j 1.x提供了重大改进,并提供了Logback中可用的许多改进,同时修复了Logback架构中的一些固有问题。

如何在Log4j2中为不同的记录器配置不同的日志记录级别

我们正在尝试在我们的项目中使用Log4j2。我们想通过属性文件配置 Log4j2。 为了减少日志中的噪音,我们希望将根记录器设置为信息并仅设置调试日志记录...

回答 1 投票 0

如何在 log4j2 中为自定义记录器编写单元测试

我创建了几个自定义记录器,其某些级别覆盖了 Log4J2 中的自定义记录器。我已按照 http://logging.apache.org/log4j/2.x/manual/customloglevels.html 上的指南进行操作。 我需要...

回答 4 投票 0

LOGGER.error(exception.getMessage()) 和 LOGGER.error(exception.getMessage(), exception) 有什么区别

就像这张图一样 我知道它们都工作得很好,但我只是想知道它们有何不同? PS:我是初学者。

回答 1 投票 0

如何确保log4j2与jboss服务器一起工作?

我正在将 log4j 从 v1.2.12 升级到 v2.17.2,以用于在 jboss-esp-7.2 服务器上运行的应用程序。更新依赖项和类后,如果我部署在服务器上,我看到日志不是

回答 1 投票 0

Log4j 正在记录错误(较低)级别的日志

拥有 INFO 级别的根记录器: rootLogger.level=信息 rootLogger.appenderRef.console.ref=ConsoleAppender 以及具有 DEBUG 级别的特定记录器: logger.kinesis.name=org.apache.flink.stream...

回答 1 投票 0

导入org.apache.log4j无法解析

Eclipse、Selenium、Windows 导入org.apache.log4j无法解析 我已遵循我能找到的所有记录步骤,即: 1)以下两个jar文件位于项目构建路径中:

回答 3 投票 0

为什么我的 log4j2 设置被忽略?

log4j2.xml 文件很简单: ...

回答 1 投票 0

如何使用 log4j2 配置 azure databricks

log4j:WARN 无法将属性 [rollingPolicy] 设置为值“org.apache.log4j.rolling.TimeBasedRollingPolicy”。 log4j:警告请为 DatabricksRollingFileAppender 设置滚动策略...

回答 2 投票 0

log4j2 使用 log4j2.properties 文件登录多个文件的策略相同

我正在修改现有的 log4j2.properties 文件以将错误记录到单独的文件中。我的问题是如何重用 SizeBasedTriggeringPolicy、TimeBasedTriggeringPolicy 和 DefaultRolloverStrategy

回答 1 投票 0

来自云配置的 JsonTemplateLayout eventTemplateUri

我已将我的应用程序配置为使用 log4j2 配置以 JSON 形式记录: 配置: 状态:警告 附加器: 安慰: 名称: 控制台 目标:SYSTEM_OUT JsonTemplate...

回答 1 投票 0

如何理解我们应用程序中的日志记录

我们的应用程序使用, 对于普通日志记录 (.log):log4j2 由 log4j-core.jar、log4j-api.jar、log4j2-extensions.jar 支持 对于控制台日志记录(.out):log4j(1.2),因为我们有使用l的jboss...

回答 1 投票 0

JsonTemplateLayout (log4j2) 无法从 LogEventPatternConverter (log4j2) 解析 ConverterKey

问题:ConverterKey 未得到解决 我想用 JsonTemplateLayout (来自 log4j2)替换我的 json-log-converter EcsLayout (来自 elastic)。 但我有这个问题,ConverterKey-Variab...

回答 1 投票 0

具有多个附加程序的 Log4j2 未写入控制台

我有一个 log4j2.XML 如下: 我有一个 log4j2.XML 如下: <?xml version="1.0" encoding="UTF-8"?> <Configuration status="WARN"> <Appenders> <Console name="ConsoleAppender" target="SYSTEM_OUT"> <PatternLayout pattern="%date %-5level %logger - %msg"/> </Console> <Kafka name="KafkaAppender" topic="cdf-databricks-log"> <JsonTemplateLayout eventTemplateUri="classpath:JsonLayout.json"> <EventTemplateAdditionalField key="info" format="JSON" value='{"$resolver": "map"}' /> </JsonTemplateLayout> <Property name="bootstrap.servers">${env:KAFKA_HOST}:${env:KAFKA_PORT}</Property> <Property name="security.protocol">SASL_SSL</Property> <Property name="sasl.mechanism">PLAIN</Property> <Property name="sasl.jaas.config">org.apache.kafka.common.security.plain.PlainLoginModule required username="${env:KAFKA_USER}" password="${env:KAFKA_PASSWD}";</Property> </Kafka> <Async name="AsyncAppender"> <AppenderRef ref="KafkaAppender"/> </Async> </Appenders> <Loggers> <Root> <AppenderRef ref="ConsoleAppender" level="ALL"/> <AppenderRef ref="KafkaAppender" level="INFO"/> </Root> <!-- Do not let org.apache.kafka log to a Kafka appender on DEBUG level. That will cause recursive logging --> <Logger name="org.apache.kafka" level="WARN" /> </Loggers> </Configuration> 我希望所有日志都定向到控制台,仅将 INFO 日志定向到 Kafka。 当我使用该应用程序时,我没有看到日志被写入控制台。 我发现根据类/包名称编写专用记录器节点(如下所示)是有效的。但我需要使 Log4j2.xml 成为可重用的组件,这就是为什么我不希望此处出现单独的类名。 <Logger name="com.abc.xxx.Someclassname" level="INFO" additivity="false"> <AppenderRef ref="ConsoleAppender"/> <AppenderRef ref="KafkaAppender"/> </Logger 我在第一个 log4j2.xml 中出错的地方有什么建议吗? 您没有指定根记录器的级别,因此应用默认的ERROR,您的配置相当于: <Root level="ERROR"> <AppenderRef ref="ConsoleAppender" level="ALL"/> <AppenderRef ref="KafkaAppender" level="INFO"/> </Root> 为了记录消息,必须至少与配置的记录器的级别和附加程序引用的级别一样具体(参见过滤)。例如,如果来自 com.example 记录器的日志必须具有 ERROR 或更高级别才能最终进入 Kafka(记录器级别:ERROR,附加程序引用级别:INFO)。来自 org.apache.kafka 附加程序的日志事件仅需要 WARN 级别(记录器级别:WARN,从根记录器继承的附加程序引用级别:INFO)。 更改根记录器的级别应该可以解决您的问题。

回答 1 投票 0

SLF4J2 和 Log4J1 到 Log4J2

我一直在为记录器依赖项摸不着头脑。我希望我自己的代码使用 SLF4J 2 API,并在测试和运行时使用 Log4J2 作为提供程序。但是,我依赖 OpenLr 的二进制文件

回答 1 投票 0

LOG4J2 显示 Hibernate 日志和开发中的我的日志,但仅显示来自已安装 MSI 的 Hibernate 日志(JavaFX 22 使用 Maven 和 jpackage for MSI)

我的 LOG4J2 日志在开发中可见,但在生产中通过 MSI 安装应用程序时不再可见。 两种情况下都会记录 Hibernate 日志,并且记录在正确的文件中(路径为

回答 1 投票 0

多 Pod 云环境 Spring Boot 应用程序在运行时更改日志级别

我有一个使用 spring boot + log4j2 的应用程序在超过 2 个 pod 的 openshift 上运行。 然而,我们的日志配置在 sprint 启动初始化后发生了变化,我的意思是,重新配置。所以,我不我们...

回答 1 投票 0

使用 log4j2 格式的 Hibernate show-sql 日志

我已经配置了 spring.jpa.show-sql: true 所以控制台日志看起来像这样: 2024-04-20 16:02:01.031 | http-nio-9001-exec-1 | http-nio-9001-exec-1 |信息| org.springframework.web.servlet.DispatcherServlet | |初始化...

回答 1 投票 0

当某些日志属性基于添加到threadcontext的数据时,如何避免在log4j2中打印“contextMap”

我想以 log4j2 Json 格式记录 2 个自定义字段,其中一个具有固定值,另一个来自 ThreadContext。我正在使用 JsonTemplateLayout 来打印日志属性。哈...

回答 1 投票 0

如何让JBoss不影响我自己的log4j2设置?

我在多个项目上使用 Log4j2(2.17.1) 和两种类型的配置(log4j.prop 和 log4j2.xml)。我的应用程序的 log4j2 在读取外部 log4j 配置时可以在 Tomcat 9 上正常工作。但不知怎的,它...

回答 3 投票 0

如何使用 JsonLayoutTemplate 仅当 ThreadContext 中存在值时才打印 log4j2 json 属性

我想以 log4j2 Json 格式记录 2 个自定义字段,其中一个具有固定值,另一个来自 ThreadContext。我正在使用 JsonTemplateLayout 并希望打印该字段...

回答 1 投票 0

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