当前位置: 首页 > news >正文

SpringBoot框架—Logger使用

1.添加依赖

在pom.xml文件中,添加依赖。但日志模块的依赖取决于使用的Starter依赖,所以完整的依赖如下:

2.导入模块

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

3.普通用法

先注入Logger对象

private static final Logger log = LoggerFactory.getLogger(MyController.class);

调用

log.debug("hello info log-debug");
log.error("This is an error message");

修改日志级别
在application.properties或application.yml中配置

//设置全局日志级别
logging.level.root=WARN;

//设置特定包的日志级别
logging.level.包名=DEBUG

4.高级用法:使用Logback扩展

在src/main/resources下新增文件:logback-spring.xml

logback-spring.xml结构

<?xml version="1.0" encoding="UTF-8"?>
<configuration  scan="true" scanPeriod="60 seconds" debug="false">
    <contextName>logback</contextName>
    <!--配置日志文件输出路径,value后面是自己的内容-->
    <property name="log.path" value="${catalina.base}/logs" />

    <!--输出到控制台-->
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <!-- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
             <level>ERROR</level>
         </filter>-->
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>

    <!--通用-->
    <appender name="AutoLogAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${catalina.base}/logs/AutoLogs.%d{yyyy-MM-dd}.log</fileNamePattern>
        </rollingPolicy>
        <encoder charset="UTF-8">
            <pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] %level [%thread] %file:%line - %msg%n</pattern>
            <charset>UTF-8</charset>
        </encoder>
    </appender>
    <logger name="autoLog" additivity="false" level="INFO">
        <appender-ref ref="AutoLogAppender"/>
    </logger>

   <!--日志级别-->
    <root level="info">
        <appender-ref ref="console" />
    </root>

</configuration>

注入Logger对象

private static final Logger AUTO_LOGGER = LoggerFactory.getLogger("autoLog");

"autoLog"来自logback-spring.xml文件中 logger 标签里的name值

调用:

AUTO_LOGGER.error("some param is null");

最后生成的效果

如果需要输出多个日志文件,在logback-spring.xml中定义多个appender和对应的logger即可

http://www.dtcms.com/a/118636.html

相关文章:

  • golang 中 make 和 new 的区别?
  • 力扣刷题——2265.统计值等于子树平均值的节点数
  • 国产三维CAD皇冠CAD在机械制造行业建模教程:油泵
  • [ctfshow web入门] web28
  • 智能仓储数字孪生Demo(Unity实现)
  • AI大模型底层技术——Scaling Law
  • leetcode13.罗马数字转整数
  • 技术面试通关秘籍:常见问题解析+实战案例+避坑指南
  • Java 容器源码分析
  • Java全栈项目--校园快递管理与配送系统(5)
  • Wincc项目被锁定无法打开
  • 红宝书第三十二讲:零基础学会模块打包器:Webpack、Parcel、Rollup
  • 解决.net接口防暴力调用问题
  • 零基础教程:Windows电脑安装Linux系统(双系统/虚拟机)全攻略
  • 特权FPGA之Johnson移位
  • node-modules-inspector 使用以及 node_modules可视化 依赖关联关系快速分析
  • Java 为什么不支持多继承?
  • 多类型医疗自助终端智能化升级路径(代码版.下)
  • C++类与对象进阶知识深度解析
  • 基于大模型的ALS预测与手术优化系统技术方案
  • 用MSYS2在windows下编译gsl-2.8库用于vs2022调用
  • 打破系统壁垒:CRM、ERP、OA一体化如何重塑企业竞争力
  • 域名系统DNS
  • 直流减速电机控制实验:Simulink应用层开发(3)
  • Ansible:roles角色
  • 物联网平台支持在水务行业使用
  • React 和 JSX 中,这些符号 (=>, <, ? :)的用法
  • 简历EasyExcel相关
  • 【Java中级】11章、枚举 - java引用数据类型,枚举介绍、快速入门,了解枚举类的基本使用方式【1】
  • 基于webGis绘制点、面