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的作者开发了新的日志框架,据说性能提高不少,那就选它了,不过,除了配置上有点不习惯外,最重要的一点 ,打印线程号这个功能依然没有(打印线程名这个东西是在是个鸡肋). ...
随机推荐
- MySQL-其它整理
来自:http://www.w3school.com.cn/sql/sql_server.asp 一:基本操作 1)插入 INSERT INTO 表名称 VALUES (值1, 值2,....): I ...
- 一张图理解"Figure", "Axes", "Axis"
Figure is the object with the highest level in the hierarchy. It corresponds to the entire graphical ...
- python多个装饰器
'''在装饰器中加上参数:1.实现在源代码中加上时间统计:函数timmer2.实现用户名认证功能:函数auth23.实现一次认证,刷新后自动登录功能,index函数已经认证并登录,在执行home函数时 ...
- .NET Core 构建跨平台的桌面应用
1.运行环境 开发工具:Visual Studio 2017 JDK版本:.NET Core 2.0 项目管理工具:nuget 2.GITHUB地址 https://github.com/nbfujx ...
- npm和webpack安装以及相关信息
一.npm初始化 在项目文件夹下执行npm init,根据提示回车或者填写信息.结果是生成packge.json文件. 根据json文件npm install会安装依赖,项目会看到有一个node_mo ...
- 【LeetCode 73】矩阵置零
题目链接 [题解] 如果a[i][j]==0. 就把第i行的第一个数字置为0 然后把第j列的第一个数字置为0 最后再处理下每行第一个为0的行.每列第一个为0的列. (第一行和第一列都得用同一个位置处理 ...
- delphi中如何将一整个文件读入内存
来源 https://bbs.csdn.net/topics/390985048 分配一块大内存吧,要是一下申请不了64M那么大,就多申请几块小的,用个链表连起来.用FileStream类的方法读取文 ...
- jsp的课设1
记这个为了巩固整个网站的开发流程,java开发太昂贵基本上很少有公司用,不知道学校怎么想的用这个.基本流程适用于任何后台的开发. JDK的安装不提了,Tomcat和Mysql都是用的最新版的,由于是w ...
- 判断PC或者是APP
function isPC() { if (/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) { return fa ...
- 关于css3 Animation动画
在介绍animation之前有必要先来了解一个东西,那就是“keyframes”,我们把他叫做“关键帧”: 在使用transition制作一个简单的transition效果时,包括了初始属性,最终属性 ...