<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="30 seconds" debug="true" xmlns="http://ch.qos.logback/xml/ns/logback"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://ch.qos.logback/xml/ns/logback https://raw.githubusercontent.com/enricopulatzo/logback-XSD/master/src/main/xsd/logback.xsd">

	<property name="DEV_HOME" value="/home/Project/logs" />	

	<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${DEV_HOME}/i2sema.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- daily rollover. Make sure the path matches the one in the file element or else
             the rollover logs are placed in the working directory. -->
            <fileNamePattern>${DEV_HOME}/application_%d{yyyy-MM-dd}.%i.log</fileNamePattern>

            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>30MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
            <!-- keep 30 days' worth of history -->
            <maxHistory>30</maxHistory>
        </rollingPolicy>

        <encoder>
            <charset>UTF-8</charset>
            <pattern>%d %-4relative [%thread] %-5level %logger{35} [%line] - %msg%n</pattern>
        </encoder>
    </appender>

   
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <layout class="ch.qos.logback.classic.PatternLayout">
            <!-- <Pattern>%d{HH:mm} %-5level %logger{36} - %msg%n</Pattern> -->
             <pattern>%d %-4relative [%thread] %-5level %logger{35} [%line] - %msg%n</pattern>
        </layout>
    </appender>
    
    <if condition='!property("server-type").equals("-qa")'>
    	<then>
	    	<logger name="i2c"                 level="INFO"/>
		    <logger name="com.i2sema"          level="INFO"/>
		    <logger name="com.i2sema.util.svc"       level="INFO" />
	    </then>
	    <else>
	    	<logger name="i2c.biz.customActivity"	level="INFO"/>
		    <logger name="com.i2sema.i2sema.com"	level="INFO"/>
		    <logger name="com.i2sema.bulk.web"	level="INFO"/>
	    </else>
    </if>
    
     <!-- <logger name="jdbc.resultsettable" additivity="false">
        <level value="info" />
        <appender-ref ref="console" />
     </logger>
    
     <logger name="jdbc.resultset">
        <appender-ref ref="CONSOLE" />
        <level value="debug"/>
    </logger> -->
    
    <if condition='property("server-type").equals("-qa")'>
        <then>
            <!-- 설정파일에 server-type이  PRD로 정의되어 있으면 로깅 레벨을 ERROR로 지정 -->
            <root level="ERROR">
                <!-- <appender-ref ref="CONSOLE"/> -->
                <appender-ref ref="FILE"/>
            </root>
        </then>
        <!-- 설정파일에 server-type이 PRD로 정의되어 있지 않으면  로깅 레벨을 DEBUG 지정  -->
        <else>
        	<if condition='property("server-type").equals("-stg")'>
        		<then>
        			<root level="ERROR">
        				<appender-ref ref="FILE"/>
        			</root>
        		</then>
        		<else>
					<if condition='property("server-type").equals("-dev")'>
						<then>
		        		    <root level="INFO">
		        	        	<appender-ref ref="FILE"/>
				            </root>
						</then>
						<else>
							<root level="INFO">
		        	        	<appender-ref ref="CONSOLE"/>
				            </root>
						</else>
					</if>
        		</else>
        	</if>            
        </else>
    </if>

</configuration>
