logback安装

来源:互联网 发布:程序员用什么画流程图 编辑:程序博客网 时间:2024/06/06 02:17
首先创建logback与slf4j的jar包:
<dependency><groupId>org.logback-extensions</groupId><artifactId>logback-ext-spring</artifactId><version>0.1.3</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.12</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>jcl-over-slf4j</artifactId><version>1.7.12</version></dependency>
然后配置logback.xml文件
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE configuration><configuration scan="true" scanPeriod="60 seconds" debug="false">    <contextName>web</contextName>    <property name="LOG_CHARSET" value="UTF-8"/>    <property name="LOG_PATH" value="/data/html/logs/web"/>    <property name="LOG_LEVEL" value="INFO"/>    <!-- 控制台输出日志 -->    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">        <layout class="ch.qos.logback.classic.PatternLayout">            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36}:%L - %msg%n</pattern>        </layout>    </appender>    <!-- common -->    <appender name="common" class="ch.qos.logback.core.rolling.RollingFileAppender">        <File>${LOG_PATH}/web-common.log</File>        <Encoding>${LOG_CHARSET}</Encoding>        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">            <FileNamePattern>                ${LOG_PATH}/web-common-%d{yyyy-MM-dd}.%i.log            </FileNamePattern>            <!-- keep 30 days worth of history-->            <MaxHistory>30</MaxHistory>            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">                <!-- rollover daily or whenever the file size reaches 200MB -->                <maxFileSize>200MB</maxFileSize>            </timeBasedFileNamingAndTriggeringPolicy>        </rollingPolicy>        <layout class="ch.qos.logback.classic.PatternLayout">            <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36}:%L - %msg%n</Pattern>        </layout>    </appender>    <!-- dal -->    <appender name="dal" class="ch.qos.logback.core.rolling.RollingFileAppender">        <File>${LOG_PATH}/web-dal.log</File>        <Encoding>${LOG_CHARSET}</Encoding>        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">            <FileNamePattern>                ${LOG_PATH}/web-dal-%d{yyyy-MM-dd}.%i.log            </FileNamePattern>            <!-- keep 30 days worth of history-->            <MaxHistory>30</MaxHistory>            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">                <!-- rollover daily or whenever the file size reaches 200MB -->                <maxFileSize>200MB</maxFileSize>            </timeBasedFileNamingAndTriggeringPolicy>        </rollingPolicy>        <layout class="ch.qos.logback.classic.PatternLayout">            <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36}:%L - %msg%n</Pattern>        </layout>    </appender>    <!-- biz -->    <appender name="biz" class="ch.qos.logback.core.rolling.RollingFileAppender">        <File>${LOG_PATH}/web-biz.log</File>        <Encoding>${LOG_CHARSET}</Encoding>        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">            <FileNamePattern>                ${LOG_PATH}/web-biz-%d{yyyy-MM-dd}.%i.log            </FileNamePattern>            <!-- keep 30 days worth of history-->            <MaxHistory>30</MaxHistory>            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">                <!-- rollover daily or whenever the file size reaches 200MB -->                <maxFileSize>200MB</maxFileSize>            </timeBasedFileNamingAndTriggeringPolicy>        </rollingPolicy>        <layout class="ch.qos.logback.classic.PatternLayout">            <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36}:%L - %msg%n</Pattern>        </layout>    </appender>    <!-- access -->    <appender name="apiAccessAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">        <File>${LOG_PATH}/web-access.log</File>        <Encoding>${LOG_CHARSET}</Encoding>        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">            <FileNamePattern>                ${LOG_PATH}/web-access-%d{yyyy-MM-dd}.%i.log            </FileNamePattern>            <!-- keep 30 days worth of history-->            <MaxHistory>30</MaxHistory>            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">                <!-- rollover daily or whenever the file size reaches 200MB -->                <maxFileSize>200MB</maxFileSize>            </timeBasedFileNamingAndTriggeringPolicy>        </rollingPolicy>        <layout class="ch.qos.logback.classic.PatternLayout">            <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36}:%L - %msg%n</Pattern>        </layout>    </appender>    <!-- error -->    <appender name="error" class="ch.qos.logback.core.rolling.RollingFileAppender">        <File>${LOG_PATH}/web-error.log</File>        <Encoding>${LOG_CHARSET}</Encoding>        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">            <level>ERROR</level>        </filter>        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">            <FileNamePattern>                ${LOG_PATH}/web-error-%d{yyyy-MM-dd}.%i.log            </FileNamePattern>            <!-- keep 30 days worth of history-->            <MaxHistory>30</MaxHistory>            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">                <!-- rollover daily or whenever the file size reaches 200MB -->                <maxFileSize>200MB</maxFileSize>            </timeBasedFileNamingAndTriggeringPolicy>        </rollingPolicy>        <layout class="ch.qos.logback.classic.PatternLayout">            <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36}:%L - %msg%n</Pattern>        </layout>    </appender>    <!-- biz -->    <appender name="interceptor" class="ch.qos.logback.core.rolling.RollingFileAppender">        <File>${LOG_PATH}/web-interceptor.log</File>        <Encoding>${LOG_CHARSET}</Encoding>        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">            <FileNamePattern>                ${LOG_PATH}/web-interceptor-%d{yyyy-MM-dd}.%i.log            </FileNamePattern>            <!-- keep 30 days worth of history-->            <MaxHistory>30</MaxHistory>            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">                <!-- rollover daily or whenever the file size reaches 200MB -->                <maxFileSize>200MB</maxFileSize>            </timeBasedFileNamingAndTriggeringPolicy>        </rollingPolicy>        <layout class="ch.qos.logback.classic.PatternLayout">            <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36}:%L - %msg%n</Pattern>        </layout>    </appender>    <!-- commom package -->    <logger name="com.qccr.web.common" additivity="false">        <level value="${LOG_LEVEL}"/>        <appender-ref ref="STDOUT"/>        <appender-ref ref="common"/>        <appender-ref ref="error"/>    </logger>    <!-- dal package -->    <logger name="com.qccr.web.dal" additivity="false">        <level value="DEBUG"/>        <appender-ref ref="STDOUT"/>        <appender-ref ref="dal"/>        <appender-ref ref="error"/>    </logger>    <!-- api access logger -->    <logger name="apiAccessLogger" additivity="false">        <level value="${LOG_LEVEL}"/>        <appender-ref ref="STDOUT"/>        <appender-ref ref="apiAccessAppender"/>        <appender-ref ref="error"/>    </logger>    <!-- biz package -->    <logger name="com.qccr.web.biz" additivity="false">        <level value="${LOG_LEVEL}"/>        <appender-ref ref="STDOUT"/>        <appender-ref ref="biz"/>        <appender-ref ref="error"/>    </logger>    <logger name="com.qccr.web.facade" additivity="false">        <level value="${LOG_LEVEL}"/>        <appender-ref ref="STDOUT"/>        <appender-ref ref="biz"/>        <appender-ref ref="error"/>    </logger>    <!-- interceptor package -->    <logger name="com.qccr.web.web.interceptor" additivity="false">        <level value="${LOG_LEVEL}"/>        <appender-ref ref="STDOUT"/>        <appender-ref ref="interceptor"/>        <appender-ref ref="error"/>    </logger>    <root level="${LOG_LEVEL}">        <appender-ref ref="STDOUT"/>        <appender-ref ref="common"/>    </root></configuration>


原创粉丝点击