日志就是记录程序日常运行的信息,springboot程序启动时,控制台显示的有具体格式的一大串就是日志。平时用sout直接打印在控制台的信息不会保存,而日志可以保存到文件中,可以帮助我们:
日志的输出等级分为六种,从上到下越来愈高:
一般用中间四个,开发时候使用DEBUG,上线后使用INFO,运维信息记录使用WARN。
在 ###.yml 文件中设置输出等级,代码格式如下:
# 开启debug模式,输出调试信息,常用于检查系统运行状况
debug: true
这种格式很简单,但是不够精细,一般用下面这种:
# 设置日志级别,root表示根节点,即整体应用日志级别
logging:
level:
# 这里可以定义单个包的日志输出等级,root就是所有包的的输出等级都是debug
root: debug
日志的输出等级设置完之后,低等级的会输出自身和高于自身等级的日志消息,比如日志输出等级设置为info,则会输出级别为info,warn,error的日志消息。
还可以像多环境配置一样在 group 属性下设置多个组,在 level 属性下给每个组设置输出等级
logging:
# 设置日志组
group:
# 自定义组名,设置当前组中所包含的包
ebank: com.alibaba.controller
level:
root: warn
# 为对应组设置日志级别
ebank: debug
2.运用lombok快速添加日志对象log输出日志得使用log对象,这里使用lombok注解快速创建
@Slf4j
@RestController
@RequestMapping("/books")
public class BookController {@Autowired
private BookService bookService;
@GetMapping
public Result getAll(){log.info("info...");
return new Result(true,bookService.getAll());
}
}
当有get请求的时候控制台的日志信息就有了
日志的输出格式如下:
可以在 yaml 配置文件中自定义:
logging:
pattern:
# %d指时间 %p指级别 %t指所属线程 %c指所属类名 %m指信息 %n换行 %clr()指带颜色
# -40指最小长度为40靠左 .40表示块内长度定死,过长则缩写,{}可以配合%clr()指定颜色
console: "%d %clr(%p) --- [%16t] %clr(%-40.40c){cyan} : %m %n"
4.日志文件工程部署后就在服务器上运行了,没有IDE的控制台可以查看日志,这就需要指定日志文件。
4.1 直接指定文件名logging:
file:
name: server.log
实际上,日志文件会很大,所以当到达一定大小时要创建新的日志文件
4.2 指定大空间和格式logging:
logback:
rollingpolicy:
max-file-size: 3MB
//%i会自增命名
file-name-pattern: server.%d{yyyy-MM-dd}.%i.log
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧