[Logback 경로 설정 문제 해결] ERROR - Failed to create parent directories

2021. 1. 8. 23:21Backend/Spring(Spring Boot)

반응형

Windows 환경에서 설정해둔 Spring boot 프로젝트를 Mac OS에서 그대로 실행시키는데 아래와 같은 문제가 발생했다.

java.lang.IllegalStateException: Logback configuration error detected: 
ERROR in ch.qos.logback.core.rolling.RollingFileAppender[FILE_APPENDER] - Failed to create parent directories for [/logs/projectName/LOCAL/projectName.log]
ERROR in ch.qos.logback.core.rolling.RollingFileAppender[FILE_APPENDER] - openFile(/logs/projectName/LOCAL/projectName.log,true) call failed. java.io.FileNotFoundException: /logs/projectName/LOCAL/projectName.log (No such file or directory)
ERROR in ch.qos.logback.core.rolling.RollingFileAppender[DB_APPENDER] - Failed to create parent directories for [/logs/projectName/LOCAL/db-projectName.log]
ERROR in ch.qos.logback.core.rolling.RollingFileAppender[DB_APPENDER] - openFile(/logs/projectName/LOCAL/db-projectName.log,true) call failed. java.io.FileNotFoundException: /logs/projectName/LOCAL/db-projectName.log (No such file or directory)

Failed to create parent directories for [/logs/projectName/LOCAL/projectName.log]
부분 보고 아 설정해둔 path에 log 파일 생성이 안되는구나 싶어서 경로를 부랴부랴 확인해보니,
yml 파일에 아래와 같이 path 설정이 /logs/경로로 되어 있었다.

 

권한 문제?🧐

 

사진을 보면 알겠지만, 프로젝트가 / 루트 경로에 대한 권한이 없어서 읽기에 실패한 것으로 판단하였고
간단하게 경로만 변경하여 문제를 해결하였다.
(그냥 로컬에서 구동할 땐 폴더 안으로 대충 설정해뒀는데, 추후 배포할 때 수정이 필요해보인다...)

logging:
#  path: /logs/projectname/${spring.application.instance-id}
  path: ./logs/projectname/${spring.application.instance-id}
  file:
    max-history: 30
    max-size: 100MB
반응형