<?xml version="1.0" encoding="UTF-8"?>

<configuration scan="false" scanPeriod="60 seconds" debug="false"><!-- 这个是根配置文件，一定要有的
                            scan：
                                是当配置文件被修改后会被重新加载
                            scanPeriod:
                                设置监测配置文件是否有修改的时间间隔，如果没有给出时间单位，
                                默认单位是毫秒。当scan为true时，此属性生效。默认的时间间隔为1分钟。
                            debug：
                                当此属性设置为true时，将打印出logback内部日志信息，实时查看logback运行状态。
                                默认值为false。
                             -->
	<!-- 日志存放路径
        下面的标签可以自己定义
        name：相当于Map的key
        value：就是map的value
        ${catalina.base}是tomcat的当前路径
        /logs：就是tomcat下的日志路径，
        /ehrlog：如果没有目录会默认创建
    -->
	<property name="logbase" value="../logs/"/>
	<!-- 时间戳：这个时间戳可以作为每日日志的名称 -->
	<timestamp key="bySecond" datePattern="yyyy-MM-dd"/>
	<!-- appender：
        name相当于一个名称
        class：确定要加载哪个类
        encoder：一定要加 encoder ，
        默认配置为PatternLayoutEncoder
        patter：必填
        ConsoleAppender：也明白是什么意思，就是输出在控制台上-->
	<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
		<encoder>
			<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
			<charset>UTF-8</charset>
		</encoder>
	</appender>
	<!-- 把日志存储
        encoding：日志的编码
        file：指定当前生成的日志文件名称
        rollingPolicy：滚动策略
        FileNamePattern：移动文件最后的名称，跟file标签结合使用，
        比如file里面的内容是  1.txt
        那么，FileNamePattern里面写的是2.txt，那么最后文件名就为2.txt
        如果最后结尾是gz或者zip，那么，就会自动打成压缩包
        -->
	<appender name="logFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
		<!-- 编码 -->
		<!--<Encoding>UTF-8</Encoding>-->
		<!-- 按照时间来 -->
		<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
			<!--日志文件输出的文件名-->
			<FileNamePattern>${logbase}/%d{yyyy-MM-dd}/ipp-idp.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
			<!--日志文件保留天数-->
			<MaxHistory>180</MaxHistory>
			<maxFileSize>10MB</maxFileSize>
			<totalSizeCap>1024MB</totalSizeCap>
			<cleanHistoryOnStart>true</cleanHistoryOnStart>
		</rollingPolicy>
		<!-- 布局 -->
		<encoder>
			<!--格式化输出：%d表示日期，%thread表示线程名，%-5level：级别从左显示5个字符宽度%msg：日志消息，%n是换行符-->
			<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
			<charset>UTF-8</charset>
		</encoder>
		<append>false</append>
	</appender>

	<logger name="com.jiayue" level="info" additivity="true">
		<appender-ref ref="logFile"/>
	</logger>
	<logger name="org" level="info" additivity="true">
		<appender-ref ref="logFile"/>
	</logger>

	<root level="info">
		<appender-ref ref="STDOUT"/>
	</root>
</configuration>
