【发布时间】:2022-01-23 11:55:26
【问题描述】:
当我听说 Log4j2 漏洞时,我直接将我的应用程序日志库更改为版本 2.17.0。当我在请求之前运行项目时,我会将 Spring Boot 应用程序生成的消息发送到我的日志文件中。
12-2021-22 [INFO ] org.springframework.boot.StartupInfoLogger.logStarting(StartupInfoLogger.java:55) - Starting ProjectNameApplication using Java 1.8.0_111 on pc-name with PID 00000 (C:\Workspace\project-name\target\classes started by user.namein C:\Workspace\project-name)
12-2021-22 [INFO ] org.springframework.boot.SpringApplication.logStartupProfileInfo(SpringApplication.java:635) - No active profile set, falling back to default profiles: default
12-2021-22 [INFO ] org.springframework.boot.StartupInfoLogger.logStarted(StartupInfoLogger.java:61) - Started ProjectNameApplication in 8.858 seconds (JVM running for 12.962)
但我不想在我的日志文件中创建这些消息。我只想在请求和响应生成时写消息,就像我的配置之前一样。如何解决这个问题?我的意思是我只想将消息发送到我的请求和响应的日志文件。
这是我的 log4j2.xml 文件
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn">
<Properties>
<Property name="basePath">/folderName/logs/</Property>
</Properties>
<Appenders>
<RollingFile name="fileLogger" fileName="${basePath}/fileName.log"
filePattern="${basePath}/edf-info-%d{MM-yyyy-dd}.log">
<PatternLayout>
<pattern>%d{MM-yyyy-dd} [%-5level] %l - %msg%n</pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy interval="1" modulate="true"/>
</Policies>
</RollingFile>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout>
<pattern>%d{MM-yyyy-dd} [%-5level] %l - %msg%n</pattern>
</PatternLayout>
</Console>
</Appenders>
<Loggers>
<Logger name="com.company.projectName" level="info" additivity="true">
<appender-ref ref="fileLogger" level="debug"/>
</Logger>
<Root level="info" additivity="false">
<appender-ref ref="console"/>
</Root>
</Loggers>
</Configuration>
【问题讨论】:
标签: java spring-boot security directory log4j2