Log4j2 - Overriding log file programmatically

2019-08-16 07:00发布

问题:

We are currently upgrading log4j1 to log4j2, In our project we have log4j1 code that overriding the log file programatically by calling below 2 methods together

  1. setAppend(false);
  2. activateOptions();

What is equivalent option in log4j2?. Below is my sample code?

class TestAppender extends RollingFileAppender {
   public void m1(){
      setAppend(false); 
      activateOptions();
   }
}



  class Test{
    public void callm1(){
    TestAppender ta = new TestAppender();
    ta.m1();

    }

log4j.properties

# Define the root logger with appender file
log4j.rootLogger = DEBUG, FILE

# Define the file appender
log4j.appender.FILE= com.test.**TestAppender**
log4j.appender.FILE.File=${log}/log.out

# Define the layout for file appender
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%m%n

This code is perfectly working now and we need log4j2 configuration.

Could someone please provide log4j2 code for above m1 method

Thanks, Durga

标签: java log4j2