org.springframework.boot.logging.logback.LogbackLoggingSystem.loadConfiguration(LogbackLoggingSystem

在启动Spring Boot应用时遇到了Logback无法创建日志文件的错误,具体表现为无法找到指定路径C:Userslogsserviceservice.log。解决方法包括在用户目录下手动创建日志文件夹或者调整logback.xml中的LOG_HOME配置。此外,还有可能遇到的日志相关警告处理。
摘要由CSDN通过智能技术生成

ERROR in ch.qos.logback.core.rolling.RollingFileAppender[SERVICE] - Failed to create parent directories for [C:\Users\logs\service\service.log]
ERROR in ch.qos.logback.core.rolling.RollingFileAppender[SERVICE] - openFile(/Users/logs/service/service.log,true) call failed. java.io.FileNotFoundException: \Us
ers\logs\service\service.log (系统找不到指定的路径。)
        at org.springframework.boot.logging.logback.LogbackLoggingSystem.loadConfiguration(LogbackLoggingSystem.java:162)
        at org.springframework.boot.logging.AbstractLoggingSystem.initializeWithSpecificConfig(AbstractLoggingSystem.java:66)
        at org.springframework.boot.logging.AbstractLoggingSystem.initialize(AbstractLoggingSystem.java:56)
        at org.springframework.boot.logging.logback.LogbackLoggingSystem.initialize(LogbackLoggingSystem.java:114)
        at org.springframework.boot.logging.LoggingApplicationListener.initializeSystem(LoggingApplicationListener.java:309)
        at org.springframework.boot.logging.LoggingApplicationListener.initialize(LoggingApplicationListener.java:277)
        at org.springframework.boot.logging.LoggingApplicationListener.onApplicationEnvironmentPreparedEvent(LoggingApplicationListener.java:240)
        at org.springframework.boot.logging.LoggingApplicationListener.onApplicationEvent(LoggingApplicationListener.java:213)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
        at org.springframework.context.event.SimpleApplicationEvent

ERROR in ch.qos.logback.core.rolling.RollingFileAppender[file_info] - openFile(/home/ruoyi/logs/sys-info.log,true) call failed. java.io.FileNotFoundException: /home/ruoyi/logs/sys-info.log (No such file or directory) ERROR in ch.qos.logback.core.rolling.RollingFileAppender[file_error] - Failed to create parent directories for [/home/ruoyi/logs/sys-error.log] ERROR in ch.qos.logback.core.rolling.RollingFileAppender[file_error] - openFile(/home/ruoyi/logs/sys-error.log,true) call failed. java.io.FileNotFoundException: /home/ruoyi/logs/sys-error.log (No such file or directory) ERROR in ch.qos.logback.core.rolling.RollingFileAppender[sys-user] - Failed to create parent directories for [/home/ruoyi/logs/sys-user.log] ERROR in ch.qos.logback.core.rolling.RollingFileAppender[sys-user] - openFile(/home/ruoyi/logs/sys-user.log,true) call failed. java.io.FileNotFoundException: /home/ruoyi/logs/sys-user.log (No such file or directory) at org.springframework.boot.logging.logback.LogbackLoggingSystem.loadConfiguration(LogbackLoggingSystem.java:179) at org.springframework.boot.logging.logback.LogbackLoggingSystem.reinitialize(LogbackLoggingSystem.java:232) at org.springframework.boot.logging.AbstractLoggingSystem.initializeWithConventions(AbstractLoggingSystem.java:73) at org.springframework.boot.logging.AbstractLoggingSystem.initialize(AbstractLoggingSystem.java:60) at org.springframework.boot.logging.logback.LogbackLoggingSystem.initialize(LogbackLoggingSystem.java:132) at org.springframework.boot.context.logging.LoggingApplicationListener.initializeSystem(LoggingApplicationListener.java:313) ... 26 more
06-10
### 回答1: org.springframework.boot.logging.deferredlogfactory是Spring Boot框架中的一个类,它提供了一种延迟初始化日志记录器的机制。这个类可以帮助开发者在应用程序启动时避免不必要的日志记录,从而提高应用程序的性能和效率。 ### 回答2: org.springframework.boot.logging.deferredlogfactory 是Spring Boot框架中的一个组件,它是DeferredLogFactory类的一个实现,是一个延迟加载的日志工厂。它的主要作用是在Spring Boot项目启动过程中,写日志的操作可以延迟到实际需要输出日志的时候再去完成,从而避免了在启动阶段输出大量无用的日志信息,减少了日志输出带来的性能损耗。 通常情况下,在Spring Boot应用启动时,日志工厂会在应用的日志输出目录下创建日志文件,并将应用中的日志信息持久化到这些日志文件中。如果日志信息过多,会导致占用磁盘空间过多,并且对性能也会产生一定的影响。而 DeferredLogFactory 的实现方式则是将日志的输出列表存储到一个队列中,等到需要实际输出日志信息的时候再去输出。这样可以减少日志文件持久化对磁盘的占用,并且可以提升应用的性能。 在使用 DeferredLogFactory 时,需要在Spring Boot项目的配置文件(如application.yml)中增加如下配置: logging: defer: true 这样就会开启Spring Boot的DeferredLogFactory功能,并实现日志信息的延迟输出。一旦有日志信息需要输出,可以通过调用DeferredLog接口的log方法来输出。由于输出的时机是在需要的时候,所以日志输出顺序可能与消息实际发生的顺序不一致。如果想以消息实际发生的顺序输出日志信息,则需要关闭DeferredLogFactory功能。 ### 回答3: org.springframework.boot.logging.deferredlogfactory是Spring框架中的一部分,主要的作用是为日志记录提供支持。它是一个工厂类,可以延迟创建所需的日志实例。这样做可以避免在应用程序启动时,因为创建的日志实例太多,而导致应用程序变慢或浪费资源。 当我们使用org.springframework.boot.logging.deferredlogfactory时,它会提供两种日志记录方式:logback和log4j2。这样,我们就可以根据需要选择适合自己的日志记录方式。 另外,由于DeferredLogFactory是延迟创建日志实例的工厂类,因此它还可以帮助我们在应用程序的生命周期内重构日志记录。比如,我们可以将应用程序的日志记录重构为使用更有效率的日志记录策略,以更好地支持应用程序的需求。 值得注意的是,虽然org.springframework.boot.logging.deferredlogfactory是Spring框架中的一部分,但它也可以被用于其他Java应用程序中。只需要正确地设置依赖项和配置即可。在使用它时,我们应该遵循Spring框架中的最佳实践,以确保最佳的性能和安全性。 综上所述,org.springframework.boot.logging.deferredlogfactory是一个非常有用的工具,可以帮助我们处理日志记录和应用程序性能的问题。它可以提供灵活的日志记录方式,并成功地延迟创建日志实例,避免应用程序在启动时出现资源浪费或性能不佳的问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值