如何解决Logback 在控制台中写入但不在文件中
我正在尝试使用 logback 将我的日志保存到一个文件中,但到目前为止我一直没有成功。我使用的代码在我们的沙箱(我认为是 Unix 系统)上部署时似乎工作正常,而在我的 Windows 系统上,使用我的本地配置,似乎没有创建任何文件。
这是我的 logback-config-local.xml
(我知道这是正在读取的文件,因为我使用某些记录器的级别来确保是那个)
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true">
<property name="LOGS_BASE_DIR" value="C://Users/Perso/Documents/Projets/MyProject/logs"/>
<timestamp key="CURRENT_DATE_TIME" datePattern="dd-MM-yyyy_HH-mm-ss"/>
<appender name="Console" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>
%black(%d{ISO8601}) %highlight(%-5level) [%blue(%t)] %yellow(%C{1.}): %msg%n%throwable
</Pattern>
</layout>
</appender>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${user.home}/logs/my-app.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>C://logger/my-app-%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder>
<charset>UTF-8</charset>
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<appender name="TraceFileAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<Pattern>%m%n</Pattern>
</encoder>
<file>${user.home}/trace/traces.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOGS_BASE_DIR}/trace/traces-%d{dd-MM-yyyy}-%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>10MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
</appender>
<!-- LOG everything at INFO level -->
<root level="info">
<appender-ref ref="Console"/>
</root>
<logger name="TraceLogger" level="error">
<appender-ref ref="TraceFileAppender"/>
</logger>
<logger name="FileLogger" level="error">
<appender-ref ref="FILE"/>
</logger>
<logger name="org.springframework" level="warn"/>
<logger name="org.springframework.security.web" level="warn"/>
</configuration>
我感兴趣的记录器是 TraceLogger,FileLogger 是作为测试创建的,但没有给出任何结果。我可以在控制台中看到来自 TraceLogger 的痕迹。
我读过类似的主题,其中似乎缺少配置标记,但它存在于我的代码中。事实上,我们沙箱环境的配置让我想知道问题是否可能来自 Windows 上的路径。我还确保写入文件夹具有正确的写入权限,并以管理员权限启动我的 IDE,以防万一这可能是问题。
到目前为止,这是我的理论:
欢迎任何帮助,谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。