log4j2相关配置说明以及${sys:catalina.home}应用

2024-09-09 06:48

本文主要是介绍log4j2相关配置说明以及${sys:catalina.home}应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

${sys:catalina.home}

等价于

System.getProperty("catalina.home")

就是Tomcat的根目录:  C:\apache-tomcat-7.0.77


<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n" />

2017-08-10 09:25:22 [http-bio-8080-exec-3] INFO  AuthorizationInterceptor:58 - LOCAL USER CODE: admin

%d{HH:mm:ss.SSS}  毫秒的时间

%t  当前线程名称

%-5level  日志级别,-5表示左对齐并且固定输出5个字符,如果不足在右边补0

%c{1}  类名

%L 输出行号

%msg 日志文本

%n 换行

其他常用的占位符有:

%F 输出所在的类文件名,如Client.java

%M 输出所在方法名

%l  输出语句所在的行数, 包括类名、方法名、文件名、行数 (这个比较强大)

2017-08-10 09:33:59 [http-bio-8080-exec-3] INFO  com.*.*.AuthorizationInterceptor.preHandle(AuthorizationInterceptor.java:58) - LOCAL USER CODE: admin


log4j2依赖jar包

log4j-api-2.6.2.jar
log4j-core-2.6.2.jar
log4j-slf4j-impl-2.6.2.jar
log4j-web-2.6.2.jar
slf4j-api-1.7.24.jar
slf4j-log4j12-1.6.1.jar


<?xml version="1.0" encoding="UTF-8"?>
<!-- 测试时,status改为trace/debug/info/warn/error/fatal -->
<Configuration status="warn"><Appenders><!-- Console输出 --><Console name="Console" target="SYSTEM_OUT"><PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n" /></Console><!-- INFO日志文件输出 --><RollingFile name="InfoRollingFile" filename="${sys:catalina.home}/logs/project_name/appInfo.log"filepattern="${sys:catalina.home}/logs/project_name/$${date:yyyy-MM}/appInfo.%d{yyyyMMdd}.%i.log.gz"><ThresholdFilter level="INFO" /><PatternLayout><Charset>utf-8</Charset><Pattern>%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n</Pattern></PatternLayout><Policies><TimeBasedTriggeringPolicy /><SizeBasedTriggeringPolicy size="100 MB"/></Policies><DefaultRolloverStrategy max="50"/></RollingFile><!-- DEBUG日志文件输出 --><RollingFile name="DebugRollingFile" filename="${sys:catalina.home}/logs/project_name/appDebug.log"filepattern="${sys:catalina.home}/logs/project_name/$${date:yyyy-MM}/appDebug.%d{yyyyMMdd}.%i.log.gz"><ThresholdFilter level="DEBUG" /><PatternLayout><Charset>utf-8</Charset><Pattern>%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n</Pattern></PatternLayout><Policies><TimeBasedTriggeringPolicy /><SizeBasedTriggeringPolicy size="100 MB"/></Policies><DefaultRolloverStrategy max="50"/></RollingFile><!-- ERROR日志文件输出 --><RollingFile name="ErrorRollingFile" filename="${sys:catalina.home}/logs/project_name/appError.log"filepattern="${sys:catalina.home}/logs/project_name/$${date:yyyy-MM}/appError.%d{yyyyMMdd}.%i.log.gz"><ThresholdFilter level="ERROR" /><PatternLayout><Charset>utf-8</Charset><Pattern>%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n</Pattern></PatternLayout><Policies><TimeBasedTriggeringPolicy /><SizeBasedTriggeringPolicy size="100 MB"/></Policies><DefaultRolloverStrategy max="50"/></RollingFile></Appenders><!-- 测试时修改为需要的级别及需要的输出 --><Loggers><Root level="info"><AppenderRef ref="InfoRollingFile"/><AppenderRef ref="ErrorRollingFile"/> <AppenderRef ref="Console"/> </Root></Loggers></Configuration>




这篇关于log4j2相关配置说明以及${sys:catalina.home}应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1150455

相关文章

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出

Linux云服务器手动配置DNS的方法步骤

《Linux云服务器手动配置DNS的方法步骤》在Linux云服务器上手动配置DNS(域名系统)是确保服务器能够正常解析域名的重要步骤,以下是详细的配置方法,包括系统文件的修改和常见问题的解决方案,需要... 目录1. 为什么需要手动配置 DNS?2. 手动配置 DNS 的方法方法 1:修改 /etc/res

Redis中Hash从使用过程到原理说明

《Redis中Hash从使用过程到原理说明》RedisHash结构用于存储字段-值对,适合对象数据,支持HSET、HGET等命令,采用ziplist或hashtable编码,通过渐进式rehash优化... 目录一、开篇:Hash就像超市的货架二、Hash的基本使用1. 常用命令示例2. Java操作示例三

Redis中Set结构使用过程与原理说明

《Redis中Set结构使用过程与原理说明》本文解析了RedisSet数据结构,涵盖其基本操作(如添加、查找)、集合运算(交并差)、底层实现(intset与hashtable自动切换机制)、典型应用场... 目录开篇:从购物车到Redis Set一、Redis Set的基本操作1.1 编程常用命令1.2 集

mysql8.0.43使用InnoDB Cluster配置主从复制

《mysql8.0.43使用InnoDBCluster配置主从复制》本文主要介绍了mysql8.0.43使用InnoDBCluster配置主从复制,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录1、配置Hosts解析(所有服务器都要执行)2、安装mysql shell(所有服务器都要执行)3、

java程序远程debug原理与配置全过程

《java程序远程debug原理与配置全过程》文章介绍了Java远程调试的JPDA体系,包含JVMTI监控JVM、JDWP传输调试命令、JDI提供调试接口,通过-Xdebug、-Xrunjdwp参数配... 目录背景组成模块间联系IBM对三个模块的详细介绍编程使用总结背景日常工作中,每个程序员都会遇到bu

Python sys模块的使用及说明

《Pythonsys模块的使用及说明》Pythonsys模块是核心工具,用于解释器交互与运行时控制,涵盖命令行参数处理、路径修改、强制退出、I/O重定向、系统信息获取等功能,适用于脚本开发与调试,需... 目录python sys 模块详解常用功能与代码示例获取命令行参数修改模块搜索路径强制退出程序标准输入

利用Python操作Word文档页码的实际应用

《利用Python操作Word文档页码的实际应用》在撰写长篇文档时,经常需要将文档分成多个节,每个节都需要单独的页码,下面:本文主要介绍利用Python操作Word文档页码的相关资料,文中通过代码... 目录需求:文档详情:要求:该程序的功能是:总结需求:一次性处理24个文档的页码。文档详情:1、每个

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二