Log4j2 Async Logger Not Logging Anything

I am trying to implement an Async Logger along with a Spring Boot Application. My log4j2.xml (I have it under /src/resources/ directory) looks like:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="ALL">
    <Appenders>
        <Console name="CONSOLE" target="SYSTEM_OUT">
            <PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n" />
        </Console>
        <!-- Generate rolling log for router with per hour interval policy -->
        <RollingFile name="ProcessorRollingFile" fileName="C:/logs/">
            <PatternLayout>
                <pattern>%d{ISO8601} [%t] %p %c %L - %m%n</pattern>
            </PatternLayout>
            <Policies>
                <TimeBasedTriggeringPolicy interval="1" modulate="true"/>
            </Policies>
            <DefaultRolloverStrategy max="24" />
        </RollingFile>
        <!-- Register Async appender -->
        <Async name="AsyncRollingFile">
            <AppenderRef ref="ProcessorRollingFile" />
        </Async>
    </Appenders>
    <Loggers>
        <AsyncLogger name="com.gtt.gcas" level="all" additivity="false" includeLocation="true">
            <AppenderRef ref="AsyncRollingFile" />
        </AsyncLogger>
    </Loggers>
</Configuration>

I have written a generic class, that can be called from other classes to log stuff. I wish to expand on it later, right now its very basic.

package com.gtt.gcas.logging;

import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

public class GCasLogging {
    
    private static Level LOG_LEVEL = Level.ALL;
    
    public static Logger logger = LogManager.getLogger(GCasLogging.class);
    

    /**
     * @return the lOG_LEVEL
     */
    public static Level getLogLevel() {
        return LOG_LEVEL;
    }
    

    /**
     * @param lOG_LEVEL the lOG_LEVEL to set
     */
    public static void setLogLevel(Level logLevel) {
        LOG_LEVEL = logLevel;
    }
}

And I am using the above class like so:

package com.gtt.gcas.preload;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;

import com.gtt.gcas.employee.repository.EmployeeRepository;
import com.gtt.gcas.logging.NCaasLogging;
import com.gtt.trial.employee.pojo.Employee;

@Component
class LoadDatabase implements CommandLineRunner {

    EmployeeRepository employeeRepository;

    @Autowired
    public LoadDatabase(EmployeeRepository employeeRepository) {
        this.employeeRepository = employeeRepository;
    }



    @Bean
    void initDatabase() {
        
        Logger logger = NCaasLogging.logger;
        
        Employee employee = new Employee("Bilbo Baggins", "burglar");
        
        logger.info("One Employee Added.");
        
        employeeRepository.save(employee);
        
        employee = new Employee("Frodo Baggins", "thief");
        
        logger.info("Second Employee Added.");
    }

    @Override
    public void run(String... args) throws Exception {
        // TODO Auto-generated method stub

    }
}

My dependencies section in the pom.xml is like:

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.session</groupId>
        <artifactId>spring-session-core</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <scope>runtime</scope>
        <optional>true</optional>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-data-jpa -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-log4j2 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-log4j2</artifactId>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.lmax/disruptor -->
    <dependency>
        <groupId>com.lmax</groupId>
        <artifactId>disruptor</artifactId>
        <version>4.0.0.RC1</version>
    </dependency>
    
    <!-- https://mvnrepository.com/artifact/javax.persistence/persistence-api -->
    <dependency>
        <groupId>javax.persistence</groupId>
        <artifactId>persistence-api</artifactId>
        <version>1.0.2</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.springframework.data/spring-data-jpa -->
    <!-- This has vulnerability CVE-2022-21724 -->
    <dependency>
        <groupId>org.springframework.data</groupId>
        <artifactId>spring-data-jpa</artifactId>
    </dependency>
    
    <!-- https://mvnrepository.com/artifact/com.h2database/h2 -->
    <dependency>
        <groupId>com.h2database</groupId>
        <artifactId>h2</artifactId>
    </dependency>
    
</dependencies>

But the problem is, it does not create any logs. The folder C:\logs does not even get created, let alone the files under it.

Please help.

How many English words
do you know?
Test your English vocabulary size, and measure
how many words do you know
Online Test
Powered by Examplum