【发布时间】:2018-09-30 08:02:24
【问题描述】:
我正在尝试将我的应用程序 spring boot 部署到 Linux 服务器中,所以我遵循了这个link,下面的文件代表我的单元声明服务:
#change this to your workspace
WorkingDirectory=/home/user1/myApp.dev/API/
[Service]
User=user1
ExecStart=/usr/bin/java -jar /home/user1/myApp.dev/API/myApp.jar
SuccessExitStatus=143
ExecStop=/bin/kill -INT $MAINPID
ExecReload=/bin/kill -TERM $MAINPID
# In case if it gets stopped, restart it immediately
Restart = always
Type = simple
[Install]
WantedBy=multi-user.target
当我启动我的应用程序时出现以下错误:
java.io.FileNotFoundException: logs/myLogs-api.log (No such file or directory).......无法为 [/logs/myLogs-api.log]
我的应用程序找不到 logs 文件夹,但它已经存在于我的 jar 文件夹 /home/user1/myApp.dev/API/ 的同一目录中。
我的登录配置
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_PATH:-logs}/myLogs-api.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOG_PATH:-logs}/myLogs-api.%d{yyyy-MM-dd}.log</fileNamePattern>
</rollingPolicy>
<append>false</append>
<encoder>
<pattern>%d{dd-MM-yyyy HH:mm:ss.SSS} %magenta([%thread]) %highlight(%-5level) %logger{36}.%M - %msg%n</pattern>
</encoder>
</appender>
<root level="info">
<appender-ref ref="FILE" />
</root>
</configuration>
【问题讨论】:
-
看起来它正在尝试在根目录中创建您的日志文件目录,因为它说 Failed to create parent directory for [/logs/myLogs-api.log](注意前导斜杠)
-
是的,这就是我理解的原因。但我看看如何解决这个问题:\
-
需要查看定义日志目录的代码或配置。
-
当我在本地主机上启动应用程序时它工作。我给你加了
-
请分享您的 application.properties 文件中的关键“logging.file”和“logging.path”的行
标签: java linux spring spring-boot ubuntu