Spring Boot動的修正ログレベル

2838 ワード

1つ てんせい心
1 loggersエンドポイント
端点はSpring Bootアプリケーションのログレベルを動的に修正する強力な機能を提供します.この機能の使用は非常に簡単で、依然としてSpring Boot自動化構成の実現を継続していますので、spring-boot-starter-actuat依存の条件を導入すると自動的にこのエンドポイントの機能が起動します.
二番目 実戦
1 依存パケットを導入

    
        org.springframework.boot
        spring-boot-starter-actuator
    
    
        org.springframework.boot
        spring-boot-starter-web
    

    
        org.springframework.boot
        spring-boot-starter-test
        test
    
2 プロファイル.propertiesを設定します.
セキュリティ認証チェックをオフにします.
management.security.enabled=false
3 クラスを開始
package com.didispace;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

@RestController
@SpringBootApplication
public class DemoApplication {

    private Logger logger = LoggerFactory.getLogger(getClass());

    @RequestMapping(value = "/test", method = RequestMethod.GET)
    public String testLogLevel() {
        logger.debug("Logger Level :DEBUG");
        logger.info("Logger Level :INFO");
        logger.error("Logger Level :ERROR");
        return "";
    }

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}
三番目 テスト
1 アプリケーションを起動
2 ブラウザ入力:http://localhost:8080/test
3 コンソール出力――デフォルトのログレベルはINFOですので、DEBUGレベルのコンテンツは出力されていません.
2018-11-03 15:13:50.655  INFO 59148 --- [nio-8080-exec-1] ication$$EnhancerBySpringCGLIB$$302a5f35 : Logger Level :INFO
2018-11-03 15:13:50.655 ERROR 59148 --- [nio-8080-exec-1] ication$$EnhancerBySpringCGLIB$$302a5f35 : Logger Level :ERROR
4 postmanは以下のメッセージ構成DEBUGを送信します.
POST要求を送信します./loggers/comp.didispaceエンドポイント
{
    "configuredLevel": "DEBUG"
}
5ブラウザ入力:http://localhost:8080/test
6 コンソール出力——ログから出力すると、動的な修正が有効になったことが分かります.
2018-11-03 15:17:46.718 DEBUG 59148 --- [nio-8080-exec-7] ication$$EnhancerBySpringCGLIB$$302a5f35 : Logger Level :DEBUG
2018-11-03 15:17:46.718  INFO 59148 --- [nio-8080-exec-7] ication$$EnhancerBySpringCGLIB$$302a5f35 : Logger Level :INFO
2018-11-03 15:17:46.718 ERROR 59148 --- [nio-8080-exec-7] ication$$EnhancerBySpringCGLIB$$302a5f35 : Logger Level :ERROR