0
[プロパティ]設定を使用してログインし、ファイルをlog4j2するタイムスタンプを追加するために作成する可能性があります:Log4j2:プログラムのファイル名にタイムスタンプを持つファイルアペンダを作成
appender.FILE.type = FILE
appender.FILE.name = FILE
appender.FILE.fileName = file-with-date-${date:yyyy-MM-dd}.log
appender.FILE.layout.type = PatternLayout
appender.FILE.layout.pattern =[%p] %m%n
これはfile-with-date-2017-11-30.log
にログファイルを生成します。プログラムの設定を使用して同じ動作を達成するにはどうすればよいですか?これはこれまで試みてきたことです:
PatternLayout layout = PatternLayout.newBuilder()
.withConfiguration(ctx.getConfiguration())
.withPattern("%m%n").build();
FileAppender fileAppender = FileAppender.newBuilder()
.withLayout(layout)
.withFileName("file-with-date-${date:yyyy-MM-dd}.log")
.withName("pattern")
.build();
しかし、これは次のファイルを生成します:file-with-date-${date:yyyy-MM-dd}.log
。したがって、プロパティの設定を使用する:プログラムで作成されたアペンダ${date:yyyy-MM-dd}.log
を使用して、現在の日付のログファイルが作成され、無視されます。