logback 메모

10810 단어 logback
라이브러리 추가
build.gradle
compile group: 'ch.qos.logback', name: 'logback-classic', version: '1.2.3'
Logback 설정xml 추가
src/main/resources 만들기
(Eclipse 사용 사전 요구 사항)
  • New > Source Folder
  • Folder name: src/main/resources
    logback.xml 만들기

    logback.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE logback>
    <configuration>
        <appender name="STDOUT"
            class="ch.qos.logback.core.ConsoleAppender">
            <encoder>
                <pattern>%msg%n</pattern>
            </encoder>
        </appender>
        <root>
            <appender-ref ref="STDOUT" />
        </root>
    </configuration>
    
    
    public class Library {
    
        public static void main(String[] args) {
            Logger logger = LoggerFactory.getLogger(Library.class);
    
            logger.warn("warn message");
            logger.info("info message");
        }
    }
    
    
    Console
    warn message
    info message
    
    logback.xml의 '%msg%n' 이 (가) 유효한지 확인하십시오.
    간단한 파일 호출 설정
    logback.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE logback>
    <configuration>
        <property name="LOG_DIR" value="./logs" />
        <property name="FILE_PREFIX" value="logback" />
    
        <timestamp key="time" datePattern="yyyyMMdd_HHmmss" />
    
        <appender name="FILE" class="ch.qos.logback.core.FileAppender">
            <file>${LOG_DIR}/${FILE_PREFIX}_${time}.log</file>
            <encoder>
                <pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern>
            </encoder>
        </appender>
        <root>
            <appender-ref ref="FILE" />
        </root>
    </configuration>
    
    로그 파일 수를 제한하려면
    주의
    복사 붙여넣기로 로그 파일을 만들면 정상적으로 작동하지 못합니다
    fileNamePattern의 "%d"토큰을 사용하여 지정한 최소 단위 삭제
    maxHistory로 유지되는 로그 파일 수를 설정합니다. (현재 쓰기 중인 로그 파일은 셀 수 없습니다.)
    CleanHistoryOnStart 없이는 삭제되지 않음
    분당 삭제된 설정
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE logback>
    <configuration>
        <property name="LOG_DIR" value="./logs" />
        <property name="FILE_PREFIX" value="logback" />
        <appender name="ROLLING"
            class="ch.qos.logback.core.rolling.RollingFileAppender">
            <param name="Append" value="false" />
            <rollingPolicy
                class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
    
                <fileNamePattern>${LOG_DIR}/${FILE_PREFIX}-%d{yyyyMMddHHmm}.log</fileNamePattern>
                <cleanHistoryOnStart>true</cleanHistoryOnStart>
                <maxHistory>1</maxHistory>
            </rollingPolicy>
            <encoder>
                <pattern>%d{yyyy-MM-dd'T'HH:mm:ss'Z'} - %m%n</pattern>
            </encoder>
        </appender>
    
        <root>
            <appender-ref ref="ROLLING" />
        </root>
    </configuration>
    
    
    로그 파일 크기 제한
    fileNamePattern에%i 추가
    logback.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE logback>
    <configuration>
        <property name="LOG_DIR" value="./logs" />
        <property name="FILE_PREFIX" value="logback" />
    
        <timestamp key="time" datePattern="yyyyMMdd_HHmmss" />
    
        <appender name="ROLLING"
            class="ch.qos.logback.core.rolling.RollingFileAppender">
            <file>${LOG_DIR}/${FILE_PREFIX}.log</file>
    
            <rollingPolicy
                class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <fileNamePattern>${LOG_DIR}/${FILE_PREFIX}-%d{yyyyMMdd_HH}.%i.log</fileNamePattern>
                <timeBasedFileNamingAndTriggeringPolicy
                    class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                    <!-- or whenever the file size reaches 100MB -->
                    <maxFileSize>5KB</maxFileSize>
                </timeBasedFileNamingAndTriggeringPolicy>
            </rollingPolicy>
            <encoder>
                <pattern>%d{yyyy-MM-dd'T'HH:mm:ss'Z'} - %m%n</pattern>
            </encoder>
        </appender>
    
        <root>
            <appender-ref ref="ROLLING" />
        </root>
    </configuration>
    
    logback.xml
    
    
    
    logback.xml
    
    
    
    기타
    상황 설정도 로그에 표시하기
    다음 appeender 태그 추가
    <param name="Append" value="false" />
    
    spring-boot
  • logback.xml이 아니라 logback-spring입니다.메인스트림 파일 이름은 xml
  • 루트 태그와 같은 레이어에 다음 내용을 열거하면 속도가 빨라집니다.
  • https://github.com/spring-projects/spring-boot/issues/1796
  • logback-spring.xml
       <include resource="org/springframework/boot/logging/logback/defaults.xml" />
    

    좋은 웹페이지 즐겨찾기