写在前面:
继续记录自己的SpringBoot学习之旅,这次是SpringBoot应用相关知识学习记录。若看不懂则建议先看前几篇博客,详细代码可在我的Gitee仓库SpringBoot克隆下载学习使用!
@RestController
@RequestMapping("/books")
public class BookController {
// 创建记录日志对象
private static final Logger log = LoggerFactory.getLogger(BookController.class);
@GetMapping
public String testSpringBoot()
{
String str = "Spring Boot is running!";
System.out.println(str);
log.debug("debug");
log.info("info");
log.warn("warning");
log.error("error");
return str;
}
}
@Slf4j
@RestController
@RequestMapping("/books")
public class BookController {
// 创建记录日志对象
// private static final Logger log = LoggerFactory.getLogger(BookController.class);
@GetMapping
public String testSpringBoot()
{
String str = "Spring Boot is running!";
System.out.println(str);
log.debug("debug");
log.info("info");
log.warn("warning");
log.error("error");
return str;
}
}
#开启DEBUG模式,输出调试信息,常用于检查系统运行状况
debug: true
#设置日志级别,root表示根节点,即整体应用日志级别
logging:
# 设置日志组
group:
# 自定义组名,设置当前组中所包含的包
demo: com.example.controller
level:
root: info
# 为对应组设置日志级别
demo: warn
主要分为时间,级别,PID,所属线程,所属类名/接口名以及日志信息,如图
![![[Pasted image 20220408112036.png]]](https://1000bd.com/contentImg/2023/10/30/135442547.png)
其中:
%d :日期,%m:消息,%n:换行,%p:日志级别,%5p:占5位字符
%clr(xx):xxx显示为彩色,%t:线程名(thread),
%-40.40c:左对齐类名(class)且最大长度为40且超过40就截取,{xx}:颜色
logging:
# 设置日志输出格式 %d 日期 %m消息 %n换行
pattern:
console:"%d - %m%n"
运行后如图![![[Pasted image 20220727135545.png]]](https://1000bd.com/contentImg/2023/10/30/135442602.png)
console: "%d %clr(%5p) %n"
运行结果![![[Pasted image 20220727140234.png]]](https://1000bd.com/contentImg/2023/10/30/135442694.png)
console: "%d %clr(%5p) --- [%16t] %clr(%-40.40c){cyan} : %m %n"
运行结果![![[Pasted image 20220727141135.png]]](https://1000bd.com/contentImg/2023/10/30/135443115.png)
便于维护时查看日志进行相应操作,控制台输出不安全
logging:
# 设置日志文件,在根目录会找到
file:
name: server.log
![![[Pasted image 20220727170044.png]]](https://1000bd.com/contentImg/2023/10/30/135443186.png)
logging:
logback:
rollingpolicy:
max-file-size: 4KB
file-name-pattern: server.%d{yyyy-MM-dd}.%i.log
注:
![![[Pasted image 20220727175839.png]]](https://1000bd.com/contentImg/2023/10/30/135442577.png)
![![[Pasted image 20220728192159.png]]](https://1000bd.com/contentImg/2023/10/30/135442721.png)
项目某一文件修改后无需进行重启服务器重新发布项目,只需要简单配置即可更新到修改后的内容
![![[Pasted image 20220727180251.png]]](https://1000bd.com/contentImg/2023/10/30/135442794.png)
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-devtoolsartifactId>
dependency>
![![[Pasted image 20220728170606.png]]](https://1000bd.com/contentImg/2023/10/30/135442841.png)
complier.automake.allow.when .app.running即可,如图![![[Pasted image 20220728190155.png]]](https://1000bd.com/contentImg/2023/10/30/135443064.png)
![![[Pasted image 20220728190958.png]]](https://1000bd.com/contentImg/2023/10/30/135442967.png)
# 自定义不参与热部署
devtools:
restart:
exclude: config/applications.yml,static/**
# 自定义不参与热部署
devtools:
restart:
exclude: config/applications.yml,static/**
# false为关闭
enabled: false
