草庐IT

SystemOutToSlf4j

全部标签

java - 使用 log4j2 进行 Spring-Boot 日志记录?

我正在使用spring-boot-starter,并想配置log4j2.xml以将异步+不同内容记录到不同的日志文件。我创建了log4j2文件,但Spring仍然使用spring-boot默认日志记录。如何切换日志记录? 最佳答案 我有更好的办法:排除logback记录器:org.springframework.bootspring-boot-starterorg.springframework.bootspring-boot-starter-logging添加log4j2启动器:org.springframework.bootsp

java - 使用 log4j2 进行 Spring-Boot 日志记录?

我正在使用spring-boot-starter,并想配置log4j2.xml以将异步+不同内容记录到不同的日志文件。我创建了log4j2文件,但Spring仍然使用spring-boot默认日志记录。如何切换日志记录? 最佳答案 我有更好的办法:排除logback记录器:org.springframework.bootspring-boot-starterorg.springframework.bootspring-boot-starter-logging添加log4j2启动器:org.springframework.bootsp

spring - spring 的环境特定 log4j 配置

我正在使用传统方式加载log4j.xmllog4jConfigLocationclasspath:conf/log4j.xmlorg.springframework.web.util.Log4jConfigListener这很好用,但现在我需要根据我所处的环境加载不同的log4j.xml文件只需将其更改为log4jConfigLocationclasspath:conf/log4j-${ENV-NAME}.xmlorg.springframework.web.util.Log4jConfigListener并且spring将在每个环境中加载正确的log4j文件,但这可能不起作用,因为w

spring - spring 的环境特定 log4j 配置

我正在使用传统方式加载log4j.xmllog4jConfigLocationclasspath:conf/log4j.xmlorg.springframework.web.util.Log4jConfigListener这很好用,但现在我需要根据我所处的环境加载不同的log4j.xml文件只需将其更改为log4jConfigLocationclasspath:conf/log4j-${ENV-NAME}.xmlorg.springframework.web.util.Log4jConfigListener并且spring将在每个环境中加载正确的log4j文件,但这可能不起作用,因为w

java - Log4j 记录到 log4j.log 而不是指定的文件名

我是log4j的新手,所以请保持温柔。但这是正在发生的事情,我不知道为什么:它正确地记录到一个文件,但创建的日志的文件名似乎是错误的。这是我的log4j配置:-->它在日志文件夹下创建一个log4j.log文件而不是messagecount.log文件。该值属性是否不符合我的预期?这是我初始化记录器的方式:类级变量:privatestaticLoggerlogger=Logger.getLogger(MessageCount.class);初始化函数:privatevoidinitLogger()throwsIOException{Propertiesprops=newProperti

java - 在java中,如何将日志写入log4j的特定文件附加程序?

如果log4j属性有多个文件附加程序,那么在Java中我如何确保日志写入特定文件。log4j.rootLogger=INFO,outlog4j.appender.SUCCESS_FILE=org.apache.log4j.FileAppenderlog4j.appender.SUCCESS_FILE.File=${dd.log.dir}/success.loglog4j.appender.VALID_FILE=org.apache.log4j.FileAppenderlog4j.appender.VALID_FILE.File=${dd.log.dir}/valid_error.log

java - Slf4j with Log4j 在wrapper exception有消息时不打印wrapped exception (caused by)

第一个例子:publicclassMain{privatestaticfinalLoggerlogger=LoggerFactory.getLogger(Main.class);publicstaticvoidmain(String[]args)throwsException{try{thrownewRuntimeException(newNullPointerException("NPE"));}catch(RuntimeExceptione){logger.error("Error:",e);}}}输出:Error:java.lang.RuntimeException:java.l

java - Log4j 2 不写入文件

具有以下配置文件:仅将(所有)日志输出写入控制台。然而,我打算将error以上的任何内容写入名为error.log的文件,格式略有不同。但是,运行我的应用程序会导致所有内容都写入控制台,留下一个空文件(已创建,只是未填充)。不知何故,Root记录器似乎捕获了所有内容,因为我也尝试过这个:不会记录两次。我真的没有想法,我什至从文档(sample#2fromhere)中复制了一个示例,并且还留下了一个空文件。 最佳答案 是的,根记录器级别是ALL,因此它将接收所有事件。一种选择是这样做:这样你只有一个记录器,所以你不需要担心可加性,在你

Spring 框架中的 java 日志记录与 Log4j。哪一个最合适

我们正在使用Spring框架在Java中开发基于Web的应用程序。我们想知道哪种日志记录系统最适合它,是Log4j还是与jdk集成的JUL(java.util.Logging)。就我而言,前者在开发人员中更受欢迎,并提供更高的定制选项,但我不确定哪个更容易适应spring。任何帮助将不胜感激。谢谢! 最佳答案 在开始使用log4j之前,请先查看logback.Log4j不应再用于新项目。如果您有需要任何日志记录框架的遗留代码,请使用slf4j使旧代码与logback(或log4j,如果必须的话)对话。你不应该使用JUL的主要原因是它

java - org.slf4j.Logger 记录到控制台,如何记录到文件?

我正在使用org.slf4j.Logger来记录输出。输出将用于控制台。如何将日志记录记录到日志文件中?privatestaticfinalLoggerLOG=LoggerFactory.getLogger(ClassName.class);LOG.info("Loggingoutputtoconsole");我没有使用log4j.properties文件。我假设我需要一个。我添加了以下log4j.properties文件并将其放置在我的eclipse项目的不同部分。#Definethefileappenderlog4j.appender.FileAppender=org.apache