其他分享
首页 > 其他分享> > springboot中logback的使用。

springboot中logback的使用。

作者:互联网

新建一个工程,里面有mybatis,mysql,lombok,这个项目能连接数据库并提取其中数据。

建好之后,新建一个logback-spring.xml。

<?xml version="1.0" encoding="UTF-8"?>
<!--日志级别从低到高分为TRACE<DEBUG<INFO<WARN<ERROR<FATAL,如果设置为WARN,则低于WARN的信息都不会输出-->
<!--scan:当此属性设置为true时,配置文件如果发生改变,将会被 重新加载,默认值为true-->
<!--scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。
当sacn为true时,此属性生效,默认的时间间隔是1分钟。-->
<!--debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态,默认值为false。通常不打印-->
<!--<configuration debug="true" scanPeriod="10 seconds" scan="true">-->
<configuration scanPeriod="10 seconds" scan="true">
    <!-- append标签相关配置是用于项目部署发布到云服务器上时的参数-->
    <!--云服务器上日志文件的保存路径,首先查找系统属性-Dlog.dir,如果存在就使用其;否则,在当前目录下创建名为applogs目录做日志存放的目录 -->
    <property name="home" value="/data/ic_resource_cloud/logs"/>
    <!--&lt;!&ndash; 日志输出格式 &ndash;&gt;-->
    <property name="pattern"
              value="%d{yyyy-MM-dd HH:mm:ss} %p [Class:%C{1}->Thread:%t] %m %n"/>

    <!-- 控制台日志:输出全部日志到控制台 -->
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>debug</level>
        </filter>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <Pattern>%date [%-5p] [%thread] %logger{60} [%file:%line] %msg%n</Pattern>
            <charset>UTF-8</charset>
        </encoder>
    </appender>

    <!-- 文件日志:输出全部日志到文件 -->
    <appender name="FILE_ALL"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>g:/log/stdout.log</File>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>g:/log/all.%d{yyyyMMdd}.log</fileNamePattern>
            <maxHistory>7</maxHistory>
        </rollingPolicy>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>${pattern}</pattern>
        </encoder>
    </appender>

    <!-- 错误日志:用于将错误日志输出到独立文件 -->
    <appender name="FILE_ERROR"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${home}/error.%d{yyyyMMdd}.log</fileNamePattern>
            <maxHistory>20</maxHistory>
        </rollingPolicy>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>%date [%-5p] [%thread] %logger{60} [%file:%line] %msg%n</pattern>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>WARN</level>
        </filter>
    </appender>

    <root>
        <level value="INFO"/>
        <appender-ref ref="CONSOLE"/>
        <appender-ref ref="FILE_ALL"/>
        <!--<appender-ref ref="FILE_ERROR"/>-->
    </root>

    <!-- 可以指定多个,指定包下的日志输出级别。例如com.example属于项目包的输出日志级别 -->
    <logger name="com.example.dao" level="DEBUG"/>
    <!--<logger name="org.apache.http.wire" level="INFO"/>-->

</configuration>

然后在需要输出log的类里直接添加就可以了!

package com.example.control;

import com.example.service.MyService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Slf4j
@Controller

public class MyController {
    @Autowired
    MyService myService;

    @RequestMapping("/hehe")
    public @ResponseBody Object hehe() {
        log.info("aaaaa,查询所有对象");
        return myService.getAllinfo();
    }

    @RequestMapping("/count")
    public @ResponseBody Object count() {
        log.info("aaaaa,查询对象数量");
        return myService.getcount();
    }

    @RequestMapping("/show/{id}")
    public @ResponseBody Object show(@PathVariable("id")Integer id){
        return myService.getUserinfo(id);
    }
}

这里没有完整的,是因为前面其它文章里有如何快速创建一个mybatis+mysql+springboot的最简单案例!

 

标签:log,org,springframework,myService,使用,import,logback,public,springboot
来源: https://www.cnblogs.com/gangliao81/p/16349285.html