Spring Bootでymlファイルにこんな設定値を書いていてSpring Boot2.3にバージョンアップしました。
logging: file: logs/hehe.log
すると、暫く経ってログファイルが出力されてない事に気付きました。
Spring Bootでログファイルが出力されなかった理由
Spring Boot2.2で「logging.file」はDeprecatedになってました。
public class LogFile { /** * The name of the Spring property that contains the name of the log file. Names can * be an exact location or relative to the current directory. * @deprecated since 2.2.0 in favor of {@link #FILE_NAME_PROPERTY} */ @Deprecated public static final String FILE_PROPERTY = "logging.file";
そしてSpring Boot2.3で完全に削除されてました。
https://github.com/spring-projects/spring-boot/blob/2.3.x/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/logging/LogFile.java#L45
ログファイルを出力出来るようにする対応
従来どおりファイルパスとファイル名を指定するには「logging.file.name」とする。
logging: file.name: logs/hehe.log
これでちゃんとログが指定した場所に出力される。めでたしめでたし。
コメント