file:被写入的文件名,可以是相对目录,也可以是绝对目录,如果上级目录不存在会自动创建,没有默认值。 append:如果是 true,日志被追加到文件结尾,如果是 false,清空现存文件,默认是true。 encoder:对记录事件进行格式化。 prudent:如果是 true,日志会被安全的写入文件,即使其他的FileAppender也在向此文件做写入操作,效...
%t(%thread)线程名 %X{key:-defaultVal}(%mdc{key:-defaultVal}) MDC信息,MDC也是log4j的东西,也自然可以用在这里 %ex{depth}(%exception{depth}, %throwable{depth}) 错误信息,默认值是full,也就是全栈打出 制表对齐 %n 如果长度不够会在左边加空格 %-n 如果长度不够会在右边加空格 %.n 如果长度超过...
consoleEncoder.setContext(loggerContext); consoleEncoder.setPattern("[%date{ISO8601}] [%level] %logger{80} [%thread] [%X{TRACE_ID}] - %msg%n"); consoleEncoder.start(); ConsoleAppender<ILoggingEvent> consoleAppender = new ConsoleAppender<>(); consoleAppender.setContext(loggerContext); consoleA...
鉴别器,常用的鉴别器是JaninoEventEvaluato,也是默认的鉴别器,它以任意的Java布尔值表达式作为求值条件,求值条件在配置文件解释过成功被动态编译,布尔值表达式返回true就表示符合过滤条件。evaluator有个子标签<expression>,用于配置求值条件。 求值表达式作用于当前日志,logback向求值表达式暴露日志的各种字段: <onMatch>:用于...
* depth:正则匹配深度,默认为12,即匹配成功次数达到此值以后终止匹配,主要考虑是性能。如果一个超长的日志,我们不应该全部替换,否则可能引入性能问题。 * maxLength:单条message的最大长度(不计算throwable),超长则截取,并在message尾部追加终止符。 * * 考虑...
<!-- debug 当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 --> <configuration scan="true" scanPeriod="60 seconds" debug="false"> <!-- 设置应用名称 --> <!-- <contextName>kpi-config-service</contextName> --> ...
Append=false:默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。 MaxFileSize=100KB: 后缀可以是KB, MB 或者是 GB. 在日志文件到达该大小时,将会自动滚动,即将原来的内容移到mylog.log.1文件。 MaxBackupIndex=2:指定可以产生的滚动文件的最大数。
<!-- %X{requestId:-defaultrequestId},':-'表示设置默认值, 当获取requestId为空的时候使用defaultrequestId替代,如果不需要默认值直接写成: %X{requestId}--><encoderclass="ch.qos.logback.classic.encoder.PatternLayoutEncoder"><pattern>[requestId:%X{requestId:-defaultrequestId}] %d %red([%thread])...
debug 当此属性设置为 true 时,将打印出 logback 内部日志信息,实时查看 logback 运行状态,默认值为 false。 <configurationscan="true"scanPeriod="60 seconds"debug="false"><!-- 其他配置省略--></configuration> 3.2 contextName 设置上下文的名称