gpt4 book ai didi

Spring引导登录到多个文件

转载 作者:行者123 更新时间:2023-12-02 08:43:36 25 4
gpt4 key购买 nike

有什么方法可以根据配置将 Spring Boot 日志记录配置到多个文件/控制台吗?即某些日志语句应写入审计文件,而普通日志语句应写入控制台/普通日志文件。

下面是我在 Spring Boot 示例应用程序上尝试过的代码。

logback-spring.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/base.xml"/>
<logger name="file" level="DEBUG" additivity="false">
<appender-ref ref="FILE" />
</logger>
<logger name="org.hello" level="ERROR" additivity="false">
<appender-ref ref="CONSOLE" />
</logger>
</configuration>

下面是 application.properties 条目

logging.level.org.springframework.web=INFO
logging.file=logs/spring-boot-logging.log

在HelloController下面

@RestController
public class HelloController {

Logger logger = LoggerFactory.getLogger(HelloController.class);

Logger logger1 = LoggerFactory.getLogger("file");

@RequestMapping("/")
public String index() {

logger.info("My Log test");
logger1.info("My Audit test");


return "Greetings from Spring Boot!";
}

}

有人可以帮忙吗?有人遇到过类似的情况吗?

非常感谢

最佳答案

标准 logback 示例,具有不同包的两个文件转到不同的文件:

<configuration>

<appender name="FILE1" class="ch.qos.logback.core.FileAppender">
<file>myApp1.log</file>
<encoder>
<pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern>
</encoder>
</appender>

<appender name="FILE2" class="ch.qos.logback.core.FileAppender">
<file>myApp1.log</file>
<encoder>
<pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern>
</encoder>
</appender>

<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%msg%n</pattern>
</encoder>
</appender>

<logger name="com.package1.foo" level="DEBUG">
<appender-ref ref="FILE1" />
</logger>

<logger name="com.package2.bar" level="DEBUG">
<appender-ref ref="FILE2" />
</logger>

<root level="debug">
<appender-ref ref="STDOUT" />
</root>
</configuration>

关于Spring引导登录到多个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42525987/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com