SpringBoot集成logback日志

一.集成logback日志

1.1使用步骤

1.创建SpringBoot框架web项目
2.pom.xml添加ssm需要依赖

   <!--SpringBoot框架web项目起步依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.0.0</version>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
    </dependencies>

3.编写集成ssm在application.properties配置

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://192.168.154.128:3306/springboot?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8
spring.datasource.username=root
spring.datasource.password=333

4.通过mybatis逆向工程生成DAO
5.手动指定资源文件

<resources>
    <resource>
         <directory>src/main/java</directory>
         <includes>
             <include>**/*.xml</include>
         </includes>
     </resource>
     <resource>
     	<directory>src/main/webapp</directory>
     	<targetPath>META-INF/resources</targetPath>
     	<includes>
     		<include>**/*.*</include>
     	</includes>
     </resource>
</resources>

6.编写Controller

@Controller
@Slf4j
public class StudentController {

    @Autowired
    private StudentService studentService;
    private Logger log1;

    @RequestMapping(value = "/student/count")
    public @ResponseBody String studentCount() {
        log.trace("查询当前学生总人数");
        log.debug("查询当前学生总人数");
        log.info("查询当前学生总人数");
        log.warn("查询当前学生总人数");
        log.error("查询当前学生总人数");

        Integer studentCount = studentService.queryStudentCount();

        return "学生总人数为:" + studentCount;
    }
}

7.编写service接口以及实现类
8.数据持久层

2.2 日志文件

Spring Boot 官方推荐优先使用带有 -spring 的文件名作为你的日志配置(如使用logback-spring.xml ,而不是 logback.xml),命名为 logback-spring.xml 的日志配置文件。默认的命名规则,并且放在 src/main/resources 下如果你即想完全掌控日志配置,但又不想用 logback.xml 作为 Logback 配置的名字,application.yml 可以通过 logging.config 属性指定自定义名字

logging.config=classpath:logging-config.xml

1.我们一般针对DAO的包进行DEBUG日志设置

<logger name="com.tx.springboot.mapper" level="debug"/>

2.代码里打印日志
之前我们大多数时候自己在每个类创建日志对象去打印信息,比较麻烦:
private static final Logger logger = LoggerFactory.getLogger(StudentServiceImpl.class);
logger.error(“xxx”);
现在可以直接在类上通过 @Slf4j 标签去声明式注解日志对象
3.pom.xml中添加依赖

<!--@Slf4j 自动化日志对象-->
<dependency>
 <groupId>org.projectlombok</groupId>
 <artifactId>lombok</artifactId>
 <version>1.18.2</version>
</dependency>

4.添加lombok插件
在这里插入图片描述
5.logback-spring.xml

<?xml version="1.0" encoding="UTF-8"?>
<!-- 日志级别从低到高分为
TRACE < DEBUG < INFO < WARN < ERROR < FATAL,
如果设置为 WARN,则低于 WARN 的信息都不会输出 -->
<!--
scan:当此属性设置为 true 时,配置文件如果发生改变,将会被重新加载,默认值为true
-->
<!-- scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认
单位是毫秒。当 scan 为 true 时,此属性生效。默认的时间间隔为 1 分钟。 -->
<!-- debug:当此属性设置为 true 时,将打印出 logback 内部日志信息,实时查看 logback
运行状态。默认值为 false。通常不打印 -->
<configuration scan="true" scanPeriod="10 seconds">
    <!--输出到控制台-->
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <!--此日志 appender 是为开发使用,只配置最底级别,控制台输出的日志级别是大
        于或等于此级别的日志信息-->
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>debug</level>
        </filter>
        <encoder>
            <Pattern>%date [%5p] [%thread] %logger{60} [%file : %line] %msg%n
            </Pattern>
            <!-- 设置字符集 -->
            <charset>UTF-8</charset>
        </encoder>
    </appender>

    <!--单个定义-->
    <logger name="com.tx.springboot.mapper" level="trace"/>

    <!--如果root标签指定的日志级别那么以根日志级别为准,如果没有则已当前追加器日志级别为准-->
    <!--全部-->
    <!--
        appender trace  trace
        root     trace

        appender trace  debug
        root     debug

        appender trace   debug
        root     空      如果root没有值默认root级别是debug

        appender debug  info
        root     info
    -->
    <root level="info">
        <appender-ref ref="CONSOLE"/>
        <!--<appender-ref ref="FILE"/>-->
    </root>
</configuration>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值