log4j1.*版本在打印日志的时候不支持占位符,在打印日志的时候需要拼接起来。所以我就讲log4j版本改为 2.*,log4j2.*版本支持占位符,在代码看上去就美观了很多。
首先下载log4j包地址:http://logging.apache.org/log4j/2.x/download.html
将log4j-api-2.*.jar、log4j-core-2.*.jar包放入lib文件夹下
创建配置文件log4j 2.*有xml、json配置两种文件方式,并没有1.*版本的properties配置方式
下面就以xml配置方式为例
在src下创建一个log4j2.xml文件,注意是log4j2.xml
内容如下:
<?xml version="1.0" encoding="UTF-8"?> <configuration status="off"> <Properties> <Property name="LOG_HOME">${sys:catalina.home}/logs/AppNetAgeService</Property> <Property name="LOG_NAME">log.txt</Property> </Properties> <appenders> <Console name="Console" target="SYSTEM_OUT"> <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread][%file:%line] - %msg%n"/> </Console> <RollingFile name="log" fileName="${LOG_HOME}/${LOG_NAME}" filePattern="${LOG_HOME}/${LOG_NAME}.%d{yyyy-MM-dd}" append="true"> <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread][%file:%line] - %msg%n" /> <Policies> <TimeBasedTriggeringPolicy modulate="true" interval="1" /> </Policies> <DefaultRolloverStrategy max="180" /> </RollingFile> </appenders> <loggers> <root level="DEBUG"> <appender-ref ref="Console"/> <appender-ref ref="log"/> </root> </loggers> </configuration>
注意事项:
1、<root level="DEBUG"></root>这个标签中level等级,、log4j优先级分别为FATAL、ERROR、WARN、INFO、DEBUG, 如果level的值设置为ERROR,那么只有FATAL、ERROR等级的日志才会打印
2、 <Property name="LOG_HOME">${sys:catalina.home}/logs/AppNetAgeService</Property>,1.*版本中获取tomcat路径是${catalina.home}, log4j2.*版本中获取tomcat路径是${sys:catalina.home}
3、 要在<root>标签中添加<appender-ref ref="Console"/>,<appender-ref ref="log"/>才能在控制台、和文件中打印日志
相关推荐
下面是一个较为完整的 Log4j2.xml 配置模板: ```xml <?xml version="1.0" encoding="UTF-8"?> <!--日志级别以及优先级排序: OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL --> <!--Configuration 后面...
标题中的“Log4J.xml”指的是Apache Log4j框架的配置文件。Log4j是Java平台上广泛使用的日志记录工具,它允许程序员以灵活和可配置的方式控制应用程序的日志输出。XML格式的配置文件提供了更高级别的结构和可读性,...
log4j2-spring.xml配置文件
一个比较通用的log4j.xml配置模板
2. **使用DailyRollingFileAppender**:`DailyRollingFileAppender`是`log4j`提供的一种特殊Appender,它可以按照指定的时间间隔(通常是每天)滚动生成新的日志文件。我们可以通过以下配置设置每日滚动: ```...
在压缩包`log4j2.config.zip`中,我们只有一个名为`config`的文件,这通常是一个XML或JSON格式的配置文件,用于定义Log4j2的行为。 1. **XML配置** - XML配置是Log4j2的主要配置方式,它以易于阅读和理解的结构来...
2. **配置log4j.properties或log4j.xml**:定义日志级别、Appender和Layout。例如: ```properties log4j.rootLogger=DEBUG, FILE log4j.appender.FILE=org.apache.log4j.FileAppender log4j.appender.FILE.File...
1. **配置机制**:Log4j的灵活性主要体现在其配置文件上,通常为log4j.properties或log4j.xml。开发者可以根据项目需求,设置不同级别的日志(如DEBUG, INFO, WARN, ERROR, FATAL),并指定这些日志的输出目标...
使用这两个库时,通常需要一个配置文件(如`log4j2.xml`或`log4j2.json`)来定义日志行为,包括日志输出级别(如DEBUG、INFO、WARN、ERROR)、输出目的地(控制台、文件、数据库等)、以及布局格式(如PatternLayout...
在使用`slf4j-log4j12-1.6.6.jar`时,开发者首先会通过SLF4J API在代码中记录日志,然后在运行环境中通过配置文件(如log4j.properties或log4j.xml)指定日志输出的策略。例如,开发者可以设置日志级别,控制哪些...
四、Log4j-1.2.16的优化与维护 1. **日志级别管理**:在生产环境中,通常会将日志级别设置为WARN或ERROR,以减少不必要的日志输出,提高性能。 2. **日志分割**:为了便于管理和分析,可以配置Log4j按日期分割日志...
目前,Log4j有两个主要版本:Log4j 1.x 和 Log4j 2.x。对于新手来说,建议从Log4j 2.x开始学习,因为它提供了更多高级特性并且修复了许多旧版本的问题。 官方网站地址:...
配置Log4j通常通过log4j.properties或log4j.xml文件完成,包括定义logger、appender、layout等。例如: ```properties log4j.rootLogger=DEBUG, FILE log4j.appender.FILE=org.apache.log4j....
2. 添加Log4j2的配置文件log4j2-spring.xml到资源文件夹中,如下所示: ```xml <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" /> ``` 3. 在Java代码中...
在`log4j demo`中,我们可能会看到以下配置文件(log4j.properties或log4j.xml)示例: ```properties # log4j.properties 示例 log4j.rootLogger=DEBUG, stdout, file log4j.appender.stdout=org.apache.log4j....
Log4j的基本配置文件通常为`log4j.properties`或`log4j.xml`。配置文件主要由三部分组成:Appender(日志输出源)、Logger(日志记录器)以及Root Logger(根日志记录器)。 ##### 1. Appender(日志输出源) ...
在SpringBoot中集成Log4j2,我们需要在资源目录下创建log4j2.xml或log4j2.json配置文件,定义日志级别、输出格式和目的地。 这个"template-master"可能是项目模板,包含了一个完整的配置示例。在这个模板中,你可能...
使用这个JAR文件,开发者可以在项目中引入SLF4J的API,并通过配置Log4j的属性文件(log4j.properties或log4j.xml)来控制日志输出的级别、格式和目的地。 在实际应用中,使用SLF4J和Log4j的好处包括: 1. **灵活性*...
《深入理解Log4j2:基于logging-log4j2-log4j-2.15.0-rc1.tar的优化实践》 Log4j2是Java日志框架中的一个重要组件,它提供了高度灵活的日志记录功能,使得开发者能够对应用程序进行精细的调试和性能监控。在最新...
在"slf4j-log4j12-1.5.8"这个包中,包含了SLF4J的API接口和Log4j的具体实现,使得开发者能够方便地将日志记录集成到Struts2应用中。 Struts2的基础jar包通常包含以下组件: 1. `struts2-core`: 这是Struts2的核心...