• IDEA日志操作


    目录

    一 日志的作用

    二 日志的操作

    1 创建记录日志的对象

    2 使用

    3 设置日志输出级别

    方式1

    方式2

    *方式3:分组设置日志级别(推荐)

    三 快速创建日志对象

    方法1 手动写

    *方法2 lombok快速创建日志对象


    一 日志的作用


    1 编程期调试代码
    2 运营期记录信息
        日常运营重要信息(峰值流量,平均响应时长...)
        应用报错信息
        运维过程数据(扩容,宕机,报警...)

    二 日志的操作

    1 创建记录日志的对象


    2 使用

    1. package com.qing.controller;
    2. import org.slf4j.Logger;
    3. import org.slf4j.LoggerFactory;
    4. import org.springframework.web.bind.annotation.GetMapping;
    5. import org.springframework.web.bind.annotation.RequestMapping;
    6. import org.springframework.web.bind.annotation.RestController;
    7. @RestController
    8. @RequestMapping("/books")
    9. public class BookController {
    10. //1 创建记录日志的对象
    11. private static final Logger log= LoggerFactory.getLogger(BookController.class);
    12. @GetMapping
    13. public String getById(){
    14. System.out.println("console:SpringBoot is running log");
    15. //2 使用
    16. //级别过低,堆栈信息,一般没有人用:log.trace();
    17. log.debug("debug...");
    18. log.info("info...");
    19. log.error("error...");
    20. log.warn("warn...");
    21. //fatal致命错误没有,因为致命错误的时候日志也不好用了
    22. return "rest:SpringBoot is running log";
    23. }
    24. }


    3 设置日志输出级别

    说明:
    主要用debug、info、warn、error这四个日志级别

    当设置debug级别的日志:会显示debug、info、warn、error的日志
    当设置info级别的日志:会显示info、warn、error的日志
    当设置warn级别的日志:会显示warn、error的日志
    当设置error级别的日志:会显示error的日志

    方式1

    edit configurations -- program arguments -- 输"--debug"

    方式2

    配置文件中:debug:true

    *方式3:分组设置日志级别(推荐)

    配置文件中

     单独设置包的日志级别:整体的日志级别是info; controller包的日志级别是debug

    1. logging:
    2. level:
    3. root: info
    4. com.qing.controller: debug

     

    分组设置日志级别:整体日志级别是warn ;qing组里的日志级别是info

    1. logging:
    2. group:
    3. qing: com.qing.controller
    4. level:
    5. root: warn
    6. qing: info

    三 快速创建日志对象

    方法1 手动写

    1 创建对象

    1. package com.qing.controller;
    2. import org.slf4j.Logger;
    3. import org.slf4j.LoggerFactory;
    4. public class BaseClass {
    5. private Class cls ;
    6. //1 创建记录日志的对象
    7. public static Logger log ;
    8. public BaseClass(){
    9. cls = this.getClass();
    10. log = LoggerFactory.getLogger(cls);
    11. }
    12. }

     2 继承使用

    1. package com.qing.controller;
    2. import org.slf4j.Logger;
    3. import org.slf4j.LoggerFactory;
    4. import org.springframework.web.bind.annotation.GetMapping;
    5. import org.springframework.web.bind.annotation.RequestMapping;
    6. import org.springframework.web.bind.annotation.RestController;
    7. @RestController
    8. @RequestMapping("/books")
    9. public class BookController extends BaseClass{
    10. @GetMapping
    11. public String getById(){
    12. System.out.println("console:SpringBoot is running log");
    13. //2 使用
    14. //级别过低,堆栈信息,一般没有人用:log.trace();
    15. log.debug("debug...");
    16. log.info("info...");
    17. log.error("error...");
    18. log.warn("warn...");
    19. //fatal致命错误没有,因为致命错误的时候日志也不好用了
    20. return "rest:SpringBoot is running log";
    21. }
    22. }

    *方法2 lombok快速创建日志对象

    lombok使用

    1 加lombok的依赖,刷新maven

    1. <dependency>
    2. <groupId>org.projectlombok</groupId>
    3. <artifactId>lombok</artifactId>
    4. </dependency>

    2 加注解@Slf4j

    1. package com.qing.controller;
    2. import lombok.extern.slf4j.Slf4j;
    3. import org.slf4j.Logger;
    4. import org.slf4j.LoggerFactory;
    5. import org.springframework.web.bind.annotation.GetMapping;
    6. import org.springframework.web.bind.annotation.RequestMapping;
    7. import org.springframework.web.bind.annotation.RestController;
    8. @Slf4j
    9. @RestController
    10. @RequestMapping("/books")
    11. public class BookController{
    12. @GetMapping
    13. public String getById(){
    14. System.out.println("console:SpringBoot is running log");
    15. //2 使用
    16. //级别过低,堆栈信息,一般没有人用:log.trace();
    17. log.debug("debug...");
    18. log.info("info...");
    19. log.error("error...");
    20. log.warn("warn...");
    21. //fatal致命错误没有,因为致命错误的时候日志也不好用了
    22. return "rest:SpringBoot is running log";
    23. }
    24. }

     

    日志格式、文件记录日志

  • 相关阅读:
    CSDN 创作规范
    k8s之无状态服务Deployment1
    安全渗透测试-win7
    Future和CompletableFuture
    招银网络一面:AOP 了解吗?有什么用?切面执行顺序如何控制?
    网页优化(布局优化、图片优化)
    【数据结构】二叉排序树;平衡二叉树的知识点学习总结
    Vue.js+SpringBoot开发大病保险管理系统
    【leetcode】字符串的变位词
    人脸识别5.1.2- insightface人脸检测模型RetinaFace-Paddle
  • 原文地址:https://blog.csdn.net/m0_45877477/article/details/125435265