<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
    <Properties>
        <property name="appName">my-service</property>
    </Properties>

    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%c{2}] [%-5level] %msg%n" />
        </Console>
        <!-- Rolling File Appender -->
        <!--
        CronTriggeringPolicy will run twice at 00 and 01 seconds otherwise log4j writes to the log file in the old directory.
        Running at 00 only created the folder with the new date but did not create the file.
         -->
        <RollingFile
                name="FileAppender"
                filePattern="D:/Logs/%d{yyyy-MM-dd}/${appName}-%i.log">
            <PatternLayout>
                <Pattern>/%d{yyyy-MM-dd}/%d{HH:mm:ss.SSS}|[%c{2}]|%-5level|%msg%n</Pattern>
            </PatternLayout>
            <Policies>
                <SizeBasedTriggeringPolicy size="100MB" />
                <CronTriggeringPolicy schedule="0 0 0 * * ?"/>
            </Policies>
        </RollingFile>
    </Appenders>

    <Loggers>
        <Root level="info">
            <AppenderRef ref="FileAppender" level="debug" />
            <AppenderRef ref="Console" level="debug" />
        </Root>
    </Loggers>
</Configuration>

