SpringBoot默认配置了【org.slf4j】,,所以配置日志输出到文件只需要在,appliction配置文件中稍作修改即可,,
加入如下配置(yml格式)
#配置日志
logging:
#配置日志文件路径
path: G:\work_space\study_spring2\study_boot_demo\log
level:
xatu.zsl: debug #不同目录下的日志可配置不同级别
org.springfromework.web: info
org.hibernate: error
就这样,,日志会保存到G:\work_space\study_spring2\study_boot_demo\log这个目录下,,默认名称为Spring.log
这个名字不好听?我也觉的,改改
#配置日志
logging:
#配置日志文件路径
level:
xatu.zsl: debug #不同目录下的日志可配置不同级别
org.springfromework.web: info
org.hibernate: error
#采用相对路径方式将日志文件输出到【log\myspringboot.log】
file: log\myspringboot.log
输出日志
先看源码
package xatu.zsl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class StudyBootDemoApplication {
protected static final Logger logger = LoggerFactory.getLogger(StudyBootDemoApplication.class);
public static void main(String[] args) {
logger.info("SpringBoot开始加载");
SpringApplication.run(StudyBootDemoApplication.class, args);
logger.info("SpringBoot加载完毕");
}
}
再看现象
很奇怪的现象,
【1】第一个,输出了一个log(SpringBoot开始加载)【main】
【2】第二个,输出了一个log(SpringBoot开始加载)【restartedMain】
【3】第三个,输出了一个log(SpringBoot加载完毕)【restartedMain】
不打印不知道,,已打印吓一跳,,好奇怪
查阅了一圈资料,网上都是各种报错没有关于【restartedMain】的解释,
根据源码看感觉restartedMain是SpringBoot运行Tomcat的控制线程,
日后在回过头来补充….现在确实还看不太懂。