SpringBoot对所有内部日志使用通用日志记录,日志记录器都预先配置为使用控制台输出,同时还提供可选的文件输出。默认情况下,SpringBoot使用Logback进行日志记录。
SpringBoot中默认使用Logback进行日志输出,SpringBoot框架的配置文件application.yml进行持久化到文件等配置。
- <dependency>
- <groupId>org.projectlombokgroupId>
- <artifactId>lombokartifactId>
- dependency>
- @Service
- @Slf4j
- public class FindUserByIdServiceImp implements FindUserByIdService {
- @Autowired
- private FindUserbyIdMapper findUserbyIdMapper;
- @Override
- public UserVO findUserById(Integer userid) {
- UserVO userVO = findUserbyIdMapper.findUserById(userid);
- log.info("查找成功:"+userVO); //使用 log.info 方法
- return userVO;
- }
- }
实际开发中,我们需要将日志持久化,放入文件中,以便于出错后能根据文档排查,或者在关键代码段打上日志便于分析代码运行情况
在 application.properties或application.yml 配置文件中进行配置
logging.file.name=logs/info.log //配置日志输出文件地址
logging.file.name=D:/logs/info.log 日志输出到绝对路径D:/logs/info.log下 logging.file.name=info.log 日志输出到相对路径 info.log 下 logging.file.name=logs/info.log 日志输出到相对路径 logs/info.log 下
输出日志到文档
日志等级有(从高到低):fatal、error、warn、info、debug、trace、off
默认的日志配置在消息写入时将消息回显到控制台。默认情况下,将记录错误级别,警告级别和信息级别的消息。
fatal(致命) error(错误) warn(警告) info (信息) debug(调试) trace(跟踪) off(关闭)
logging.config 是用来指定项目启动的时候,读取哪个配置文件,这里指定的是日志配置文件,即子module项目根路径下的 logback.xml文件,该文件是日志的主要配置信息。用来配置指定包的路径下应用程序的日志记录,及其日志级别。
logging.level用来指定具体的包中应用程序日志的输出级别。上面的配置表示com.hl.magic包下的所有日志输出级别为 trace,会将操作数据库的 sql 打印出来,开发时设置成 trace 方便定位问题,在生产环境上,将这个日志级别再设置成 error 级别即可。
logging.level.web=trace //追踪web
logging.level.sql=trace //追踪sql
logging.level.root=trace //追踪所有