springboot日志使用logback

一、logback日志的集成

Logback是由log4j创始人设计的又一个开源日志组件。目前,logback分为三个模块:logback-core,logback-classic和logback-access。是对log4j日志展示进一步改进

1. 日志的级别
> DEBUG < INFO < WARN < ERROR < OFF
>
> 日志级别由低到高:  `日志级别越高输出的日志信息越少`
2. 项目中日志分类
> 日志分为两类
>
>  一种是rootLogger :     用来监听项目中所有的运行日志 包括引入依赖jar中的日志 
>
>  一种是logger :         用来监听项目中指定包中的日志信息
3. java项目中使用
3.1 logback配置文件
    > logback的配置文件必须放在项目根目录中 且名字必须为logback.xml


    
    
        
        
        
             [%p] %d{yyyy-MM-dd HH:mm:ss} %m %n
        
    

    
    
        
    
    
    


重新启动项目,日志格式发生变化。


image.png
3.2 具体类中使用日志

如果不用logback.xml,想要在自己的代码中加日志:
第一种: private static final Logger logger = LoggerFactory.getLogger(UserController.class);

@Controller
@RequestMapping("/hello")
public class HelloController {
    //声明日志成员
    private static final Logger logger = LoggerFactory.getLogger(UserController.class);
    @RequestMapping("/hello")
    @ResponseBody
    public String hello(){
        System.out.println("======hello world=======");
        logger.debug("DEBUG");
        logger.info("INFO");
        logger.warn("WARN");
        logger.error("ERROR");
        return "hello";
    }
}

第二种:小辣椒中的@Slf4j

      
            org.projectlombok
            lombok
        
@Controller//如果要完成页面的需求,就不能用@RestController
@RequestMapping("user")
@Slf4j
public class UserController {

    @Autowired
    private UserService userService;
    
    //findAll
    @GetMapping("/findAll")
    public String findAll(Model model){
        log.debug("DEBUG");
        log.info("INFO");
        log.warn("WARN");
        log.error("ERROR");
        List users = userService.findAll();
        model.addAttribute("users",users);
        return "showAll";
    }




    //save
    @GetMapping("/save")
    public String save(User user){
        userService.save(user);
        return "redirect:/user/findAll";
    }
}
image.png
3.3 使用默认日志配置
logging:
  level:
    root: info
    com.nono.dao: debug
    com.nono.controller: debug
  path: /Users/nono/aa.log
  file: bbb.log

你可能感兴趣的:(springboot日志使用logback)