SpringBoot基本的日志按天收集配置(不是滚动,就是每天创建一个文件)
SpringBoot基本的日志按天收集配置(不是滚动,就是每天创建一个文件)
·
logback.xml
这个配置可以按天生成日志文件
logback.properties (自定义的外部配置文件,就是设置文件的输出路径)
logback.dir=/home/bigdata/shishishell/logdata
logback.all.filename=/logs/loanms-all
logback.info.filename=/app
logback.debug.filename=/logs/loanms-debug
logback.warn.filename=/logs/loanms-warn
logback.error.filename=/logs/loanms-error
logback.maxhistory=60
logback.level=info
logback.charset=UTF-8
logback.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true">
<property resource="logback.properties"/>
<appender name="file-info" class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<Prudent>true</Prudent>
<rollingPolicy
class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>
${logback.dir}/${logback.info.filename}.%d{yyyy-MM-dd}.log
</FileNamePattern>
<!-- keep ${logback.maxhistory} days worth of history -->
<MaxHistory>${logback.maxhistory}</MaxHistory>
</rollingPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>
%d{yyyy-MM-dd HH:mm:ss} -%msg%n
</Pattern>
</layout>
<encoder>
<pattern>%msg%n</pattern>
</encoder>
</appender>
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%msg%n</pattern>
</encoder>
</appender>
<!-- 下面注解掉的都是标准格式-->
<!-- <appender name="file-all" class="ch.qos.logback.core.rolling.RollingFileAppender">-->
<!-- <Prudent>true</Prudent>-->
<!-- <rollingPolicy-->
<!-- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">-->
<!-- <FileNamePattern>-->
<!-- ${logback.dir}/${logback.all.filename}.%d{yyyy-MM-dd}.log-->
<!-- </FileNamePattern>-->
<!-- <!– keep ${logback.maxhistory} days worth of history –>-->
<!-- <MaxHistory>${logback.maxhistory}</MaxHistory>-->
<!-- </rollingPolicy>-->
<!-- <layout class="ch.qos.logback.classic.PatternLayout">-->
<!-- <Pattern>-->
<!-- %d{yyyy-MM-dd HH:mm:ss} -%msg%n-->
<!-- </Pattern>-->
<!-- </layout>-->
<!-- <encoder>-->
<!-- <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>-->
<!-- </encoder>-->
<!-- </appender>-->
<!-- <appender name="file-info" class="ch.qos.logback.core.rolling.RollingFileAppender">-->
<!-- <filter class="ch.qos.logback.classic.filter.LevelFilter">-->
<!-- <level>INFO</level>-->
<!-- <onMatch>ACCEPT</onMatch>-->
<!-- <onMismatch>DENY</onMismatch>-->
<!-- </filter>-->
<!-- <Prudent>true</Prudent>-->
<!-- <rollingPolicy-->
<!-- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">-->
<!-- <FileNamePattern>-->
<!-- ${logback.dir}/${logback.info.filename}.%d{yyyy-MM-dd}.log-->
<!-- </FileNamePattern>-->
<!-- <!– keep ${logback.maxhistory} days worth of history –>-->
<!-- <MaxHistory>${logback.maxhistory}</MaxHistory>-->
<!-- </rollingPolicy>-->
<!-- <layout class="ch.qos.logback.classic.PatternLayout">-->
<!-- <Pattern>-->
<!-- %d{yyyy-MM-dd HH:mm:ss} -%msg%n-->
<!-- </Pattern>-->
<!-- </layout>-->
<!-- <encoder>-->
<!-- <!–<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p [%c{0}] %m%n</pattern>–>-->
<!-- <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>-->
<!-- </encoder>-->
<!-- </appender>-->
<!-- <appender name="file-warn" class="ch.qos.logback.core.rolling.RollingFileAppender">-->
<!-- <filter class="ch.qos.logback.classic.filter.LevelFilter">-->
<!-- <level>WARN</level>-->
<!-- <onMatch>ACCEPT</onMatch>-->
<!-- <onMismatch>DENY </onMismatch>-->
<!-- </filter>-->
<!-- <Prudent>true</Prudent>-->
<!-- <rollingPolicy-->
<!-- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">-->
<!-- <FileNamePattern>-->
<!-- ${logback.dir}/${logback.warn.filename}.%d{yyyy-MM-dd}.log-->
<!-- </FileNamePattern>-->
<!-- <!– keep ${logback.maxhistory} days worth of history –>-->
<!-- <MaxHistory>${logback.maxhistory}</MaxHistory>-->
<!-- </rollingPolicy>-->
<!-- <layout class="ch.qos.logback.classic.PatternLayout">-->
<!-- <Pattern>-->
<!-- %d{yyyy-MM-dd HH:mm:ss} -%msg%n-->
<!-- </Pattern>-->
<!-- </layout>-->
<!-- <encoder>-->
<!-- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p [%c{0}] %m%n</pattern>-->
<!-- </encoder>-->
<!-- </appender>-->
<!-- <appender name="file-error"-->
<!-- class="ch.qos.logback.core.rolling.RollingFileAppender">-->
<!-- <Prudent>true</Prudent>-->
<!-- <filter class="ch.qos.logback.classic.filter.LevelFilter">-->
<!-- <level>ERROR</level>-->
<!-- <onMatch>ACCEPT</onMatch>-->
<!-- <onMismatch>DENY </onMismatch>-->
<!-- </filter>-->
<!-- <rollingPolicy-->
<!-- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">-->
<!-- <FileNamePattern>-->
<!-- ${logback.dir}/${logback.error.filename}.%d{yyyy-MM-dd}.log-->
<!-- </FileNamePattern>-->
<!-- <!– keep ${logback.maxhistory} days worth of history –>-->
<!-- <MaxHistory>${logback.maxhistory}</MaxHistory>-->
<!-- </rollingPolicy>-->
<!-- <layout class="ch.qos.logback.classic.PatternLayout">-->
<!-- <Pattern>-->
<!-- %d{yyyy-MM-dd HH:mm:ss} -%msg%n-->
<!-- </Pattern>-->
<!-- </layout>-->
<!-- <encoder>-->
<!-- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p [%c{0}] %m%n</pattern>-->
<!-- </encoder>-->
<!-- </appender>-->
<!-- <appender name="file-debug" class="ch.qos.logback.core.rolling.RollingFileAppender">-->
<!-- <filter class="ch.qos.logback.classic.filter.LevelFilter">-->
<!-- <level>DEBUG</level>-->
<!-- <onMatch>ACCEPT</onMatch>-->
<!-- <onMismatch>DENY </onMismatch>-->
<!-- </filter>-->
<!-- <Prudent>true</Prudent>-->
<!-- <rollingPolicy-->
<!-- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">-->
<!-- <FileNamePattern>-->
<!-- ${logback.dir}/${logback.debug.filename}.%d{yyyy-MM-dd}.log-->
<!-- </FileNamePattern>-->
<!-- <!– keep ${logback.maxhistory} days worth of history –>-->
<!-- <MaxHistory>${logback.maxhistory}</MaxHistory>-->
<!-- </rollingPolicy>-->
<!-- <layout class="ch.qos.logback.classic.PatternLayout">-->
<!-- <Pattern>-->
<!-- %d{yyyy-MM-dd HH:mm:ss} -%msg%n-->
<!-- </Pattern>-->
<!-- </layout>-->
<!-- <encoder>-->
<!-- <!–<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p [%c{0}] %m%n</pattern>–>-->
<!-- <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>-->
<!-- </encoder>-->
<!-- </appender>-->
<!-- <appender name="console" class="ch.qos.logback.core.ConsoleAppender">-->
<!-- <encoder>-->
<!-- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p [%c{0}] %m%n</pattern>-->
<!-- </encoder>-->
<!-- </appender>-->
<!-- 指定一个类下面的log方法信息设置-->
<logger name="com.example.rizhi.controller.LogController"
level="INFO" additivity="true">
<!-- appender-ref对应上面声明的日志输出形式 appender-->
<!-- 这里的file-info表示启动info格式日志的输出-->
<appender-ref ref="file-info" />
<appender-ref ref="console" />
</logger>
<!-- 这里表示所有日志格式设置additivity为true表示文件追加的形式,如果为false就是覆盖-->
<root>
<level value="error" additivity="true"/>
<!-- <appender-ref ref="file-all" />-->
<!-- 这里需要分开使用的时候再配置,这里的appender-ref就是引用上面的配置-->
<!-- <appender-ref ref="file-info" />-->
<!-- <appender-ref ref="file-debug" />-->
<!-- <appender-ref ref="file-warn" />-->
<!-- <appender-ref ref="file-error" />-->
<appender-ref ref="console" />
</root>
</configuration>
配置文件放置位置示例
日志打印示例
@Slf4j
log.info(logg);
springboot打包插件
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>rizhi</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>rizhi</name>
<description>rizhi</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
更多推荐
所有评论(0)