logback-paycore.xml 日志配置
<?xml version="1.0" encoding="UTF-8"?><configuration> <property name="LOG_FILE" value="${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}/all.${tomcat.port:-paycore}.log"/> <property name="LOG_FILE_ERR" value="${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}/error.${tomcat.port:-paycore}.log"/> <!--业务日志追踪--> <property name="LOG_FILE_TRACE" value="${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}/trace.${tomcat.port:-paycore}.log"/>
<include resource="org/springframework/boot/logging/logback/defaults.xml"/> <include resource="org/springframework/boot/logging/logback/console-appender.xml"/>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>INFO</level> </filter> <encoder> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} ${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%t] %-40.40logger{39} : [TxId: %X{PtxId} , SpanId : %X{PspanId} ,TraceId : %X{PtraceId}] %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx} </pattern> </encoder> <file>${LOG_FILE}</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.%i.zip</fileNamePattern> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>512MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> </appender>
<appender name="FILE_ERR" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>ERROR</level> </filter> <encoder> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} ${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%t] %-40.40logger{39} : [TxId: %X{PtxId} , SpanId : %X{PspanId}, TraceId : %X{PtraceId}] %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx} </pattern> </encoder> <file>${LOG_FILE_ERR}</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOG_FILE_ERR}.%d{yyyy-MM-dd}.%i.zip</fileNamePattern> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>512MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> </appender>
<!--业务监控日志--> <appender name="business-log" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>${LOG_PATH}/business/all.${tomcat.port:-0000}-30dt.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <fileNamePattern>${LOG_PATH}/business/all.${tomcat.port:-0000}-30dt.log.%d{yyyy-MM-dd}.%i.zip </fileNamePattern> <maxFileSize>1024MB</maxFileSize> </rollingPolicy> <encoder> <pattern>%msg%n</pattern> </encoder> </appender>
<!--业务日志追踪--> <appender name="LOG_FILE_TRACE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <encoder> <pattern><!--%d{yyyy-MM-dd HH:mm:ss.SSS} ${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%t] %-40.40logger{39} : [TxId: %X{PtxId} , SpanId : %X{PspanId} , TraceId : %X{PtraceId}]--> %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx} </pattern> </encoder> <file>${LOG_PATH}/logTraceFile/all.${tomcat.port:-0000}.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOG_PATH}/logTraceFile/all.${tomcat.port:-0000}.log.%d{yyyy-MM-dd}.%i.zip</fileNamePattern> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>512MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> </appender>
<!-- 添加异步日志包裹 --> <appender name="async-business-log" class="com.msxf.boot.core.util.log.LogbackAsyncAppender"> <includeCallerData>true</includeCallerData> <appender-ref ref="business-log"/> </appender> <logger name="com.msxf.boot.core.util.log.BusinessLogger" additivity="false" level="INFO"> <appender-ref ref="async-business-log"/> </logger>
<logger name="com.msxf.paycore.domain.data.LogTrack" additivity="false" level="INFO"> <appender-ref ref="LOG_FILE_TRACE"/> </logger>
<!--<root level="DEBUG">--> <!--<logger name="com.msxf.paycore" level="DEBUG" additivity="false"/>--> <!--<logger name="org.springframework.data.redis" level="DEBUG" additivity="false"/>-->
<root level="INFO"> <!--CONSOLE一般在本地开发时使用,测试与生产环境不要使用,1会增加catalina.out的容量,2会使用tomcat同时有两个catalina.out文件(一个有日期)--> <if condition='property("spring.profiles.active").contains("local")'> <then> <appender-ref ref="CONSOLE"/> </then> </if> <appender-ref ref="FILE"/> <appender-ref ref="FILE_ERR"/> </root>
<jmxConfigurator/>
</configuration>
logback-paycore.xml 日志配置的更多相关文章
- logback.xml日志配置
日志先行,日志是程序员的眼睛 控制台输出 <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAp ...
- Spring Boot中实现logback多环境日志配置
在Spring Boot中,可以在logback.xml中的springProfile标签中定义多个环境logback.xml: <springProfile name="produc ...
- logback&log4j异步日志配置
logback 原始配置 配置 appender, 控制文件的滚动方式,日志的输出格式. <appender name="method-time-appender" clas ...
- SpringBoot整合+logback日志配置
本次演示的代码结构如下,基于maven,整合SpringBoot.Spring.Mybaits的SSM框架.同时测试logback日志框架的使用及配置. 1.创建maven工程,修改pom.xml文件 ...
- logback条件日志配置
logback支持条件日志配置,支持在测试环境和正式环境使用不同的参数启用不同的日志配置,从而避免手动修改日志配置文件.项目除了引入logback的包以外,还需要引入构件org.codehaus.ja ...
- logback.xml文件配置(按时间、文件大小和log名称生成日志)
之前项目中日志多用的log4j2,偶然看到在importNew看到了logback,自己查了下,发现Logback和log4j是非常相似的,其作者也是同一个人,并且logback相比于log4j性能更 ...
- logback logback.xml常用配置详解(三)
logback logback.xml常用配置详解 <filter> <filter>: 过滤器,执行一个过滤器会有返回个枚举值,即DENY,NEUTRAL,ACCEPT其中之 ...
- 日志组件logback的介绍及配置使用方法
一.logback的介绍 Logback是由log4j创始人设计的又一个开源日志组件.logback当前分成三个模块:logback-core,logback- classic和logback-acc ...
- 日志配置logback
在选择项目日志框架时,发现log4j的作者开发了新的日志框架,据说性能提高不少,那就选它了,不过,除了配置上有点不习惯外,最重要的一点 ,打印线程号这个功能依然没有(打印线程名这个东西是在是个鸡肋). ...
随机推荐
- ThreadPoolExecutor扩展
import java.util.concurrent.*; /** * ThreadPoolExecutor扩展 */ public class ExtThreadPool { public sta ...
- 关系型数据库---MYSQL---优化
1.为什么要进行SQL优化? 1.1 查询性能低 1.2 执行时间过长 1.3 等待时间过长 1.4 SQL写的太差(尤其是多表关联查询) 1.5 索引失效 1.6 服务器参数(缓存.线程数)设置不合 ...
- Request Payload 和 Form Data 的区别
概述 我正在开发的项目前端和后端是完全独立的,通过配置 webpack 的 proxy 将前端请求跨域代理到后台服务.昨天发现,我前端执行 post 请求,后台 springmvc 的 @Reques ...
- java连接远程服务器并执行命令
导入必要的jar包 <dependency> <groupId>ch.ethz.ganymed</groupId> <artifactId>ganym ...
- MySQL提示:too many connections
1.首先查询最大连接数 show variables like '%max_connections%'; 2.检查当前的连接情况: show processlist; 3.批量kill当前的连接: 通 ...
- 【优化】Mysql字段尽可能用NOT NULL
下面咱们要聊的是 MySQL 里的 null,在大量的 MySQL 优化文章和书籍里都提到了字段尽可能用NOT NULL,而不是NULL,除非特殊情况.但却都只给结论不说明原因,犹如鸡汤不给勺子一样, ...
- HDU 6058 Kanade's sum —— 2017 Multi-University Training 3
Kanade's sum Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Tota ...
- Rabin算法
中国剩余定理 如果已知n的素因子,那么就能够利用中国剩余定理求解方程组.用现代数学的语言来说明就是,中国剩余定理给出了以下的一元线性同余方程组有解的判定条件: 一般而言,如果n的素因子可以分解为: \ ...
- php基于SQLite实现的分页功能示例
php基于SQLite实现的分页功能. 这里操作数据库文件使用的是前面文章<PHP基于PDO实现的SQLite操作类>中的SQLite数据库操作类. 代码: <?php class ...
- springboot 导出excel
依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</ ...