這篇文章將為大家詳細講解有關spring boot中怎么動態(tài)調整日志級別,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供普蘭店網站建設、普蘭店做網站、普蘭店網站設計、普蘭店網站制作等企業(yè)網站建設、網頁設計與制作、普蘭店企業(yè)網站模板建站服務,10多年普蘭店做網站經驗,不只是建網站,更提供有價值的思路和整體網絡服務。
實現起來超級簡單,使用spring boot自帶的LoggingSystem的api來動態(tài)設置日志級別,當然的項目需要提供動態(tài)調整的接口,來達動態(tài)調整的目的。不過博主項目使用了Apollo配置中心,利用其配置動態(tài)生效的特性,soso就搞定了,代碼如下
@Service public class DynamicLoggersConfig{ Logger logger= LoggerFactory.getLogger(getClass()); @ApolloConfig private Config config; private final static String LoggerTag="logging.level."; private final LoggingSystem loggingSystem; public DynamicLoggersConfig(LoggingSystem loggingSystem) { Assert.notNull(loggingSystem, "LoggingSystem must not be null"); this.loggingSystem = loggingSystem; } @ApolloConfigChangeListener private void configChangeListter(ConfigChangeEvent changeEvent){ SetkeyNames=config.getPropertyNames(); for (String key:keyNames){ if (StringUtils.containsIgnoreCase(key,LoggerTag)){ String strLevel=config.getProperty(key,"info"); LogLevel level = LogLevel.valueOf(strLevel.toUpperCase()); loggingSystem.setLogLevel(key.replace(LoggerTag,""),level); logger.info("{}:{}",key,strLevel); } } } }
怎么配置?
和在spring環(huán)境下正常配置日志級別一樣配置即可,如
logging.level.org.springframework = info logging.level.com.yudianbank.sales = debug logging.level.org.hibernate = info
關于spring boot中怎么動態(tài)調整日志級別就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。