`

log4j的配置文件备份.[成功测试]

 
阅读更多
1.在项目的config目录下,新建配置文件 log4j.xml,或者 log4j.properties

2.配置config到class目录

3.如果是默认的配置,则不需要额外的配置,log4j即可起作用;如果是非默认配置,则需要手动的加载配置文件,具体方式,网上已经很多介绍,一般遵循默认配置即可.

4.分别贴出两种配置文件内容

4.1. log4j.properties

log4j.rootLogger=INFO, stdout, fileout

log4j.logger.org=ERROR
log4j.logger.com.jimmy=info

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %p %l[%t] %m%n


log4j.appender.fileout=org.apache.log4j.RollingFileAppender
log4j.appender.fileout.File=/home/zhangjun/soft/logTest/jimmy.log
log4j.appender.fileout.MaxFileSize=1kb
log4j.appender.fileout.MaxBackupIndex=2
log4j.appender.fileout.layout=org.apache.log4j.PatternLayout
log4j.appender.fileout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS}[%p][%F:%L][%t]%x %m%n


log4j.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration threshold="debug"
	xmlns:log4j='http://jakarta.apache.org/log4j/'>

	<appender name="console" class="org.apache.log4j.ConsoleAppender">
		<param name="Target" value="System.out" />
		<param name="threshold" value="info" />
		<layout class="org.apache.log4j.PatternLayout">
			<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %p %C.%M[%L][%t] %m%n" />
		</layout>
	</appender>

	<!-- 业务类日志  -->
	<appender name="business" class="org.apache.log4j.RollingFileAppender">
		<param name="File" value="/home/zhangjun/soft/logTest/jimmy.log" />
		<param name="Append" value="true" />
		<param name="threshold" value="info" />
		<param name="MaxFileSize" value="1kb" />
		<param name="MaxBackupIndex" value="5" />
		<layout class="org.apache.log4j.PatternLayout">
			<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %p %C.%M[%L][%t] %m%n" />
		</layout>
	</appender>

	<!-- 指定特定的包路径下的日志输出级别 -->
	<category name="com.jimmy.base" additivity="true">
		<priority value="WARN" />
		<appender-ref ref="console.CONSOLE" />
	</category>


	<root>
		<level value="info" />
		<appender-ref ref="console" />
		<appender-ref ref="business" />
	</root>

</log4j:configuration> 



5.关于各配置项,网上已很多说明,贴出一部分:
这是log4j默认的配置,我们先熟悉一下
  <!-- ============================== -->
  <!-- Append messages to the console -->
  <!-- ============================== -->
    <!--输出方式:输出到控制台-->
    <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
    <!-- 设置通道名称:console和输出方式:org.apache.log4j.RollingFileAppender
           其中输出方式appender有5种,分别为
           org.apache.log4j.ConsoleAppender (控制台) 
           org.apache.log4j.FileAppender (文件)
           org.apache.log4j.DailyRollingFileAppender (每天产生一个日志文件)
           org.apache.log4j.WriterAppender (将日志信息以流格式发送到任意指定的地方)-->
    <param name="Target" value="System.out"/>
    <param name="Threshold" value="INFO"/>
      <!--Threshold是个全局的过滤器,它将把低于所设置的level的信息过滤不显示出来-->
      <!--level:是日记记录的优先级,优先级由高到低分为
          OFF ,FATAL ,ERROR ,WARN ,INFO ,DEBUG ,ALL。
          Log4j建议只使用FATAL ,ERROR ,WARN ,INFO ,DEBUG这四个级别。-->

    <layout class="org.apache.log4j.PatternLayout">
       <!-- 配置日志输出的格式-->
              参数都以%开始后面不同的参数代表不同的格式化信息(参数按字母表顺序列出):
              %c     输出所属类的全名,可在修改为 %d{Num} ,Num类名输出的围  如:"org.apache.elathen.ClassName",
                                                                               %C{2}将输出elathen.ClassName
                                                                                           
              %d     输出日志时间其格式为 %d{yyyy-MM-dd HH:mm:ss,SSS},可指定格式 如 %d{HH:mm:ss}
              %l     输出日志事件发生位置,包括类目名、发生线程,在代码中的行数
              %n     换行符
              %m     输出代码指定信息,如info(“message”),输出message
              %p     输出优先级,即 FATAL ,ERROR 等
              %r     输出从启动到显示该log信息所耗费的毫秒数
              %t     输出产生该日志事件的线程名
      <!-- The default pattern: Date Priority [Category] Message/n -->
      <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/>
    </layout>
  </appender>

  <!输出方式是:每天一个日志文件>
  <!-- A time/date based rolling appender -->
  <appender name="FILE" class="org.jboss.logging.appender.DailyRollingFileAppender">
    <!--设置通道名称是:file,输出方式DailyRollingFileAppender-->
    <param name="File" value="${jboss.server.home.dir}/log/server.log"/>
    <!--日志文件路径和文件名称 -->
    <param name="Append" value="false"/>
    <!-- 设置是否在重新启动服务时,在原有日志的基础添加新日志 -->


    <!-- Rollover at midnight each day -->
    <param name="DatePattern" value="'.'yyyy-MM-dd"/>



    <!-- Rollover at the top of each hour
    <param name="DatePattern" value="'.'yyyy-MM-dd-HH"/>
    -->



    <layout class="org.apache.log4j.PatternLayout">
      <!-- The default pattern: Date Priority [Category] Message/n -->
      <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>

      <!-- The full pattern: Date MS Priority [Category] (Thread:NDC) Message/n
      <param name="ConversionPattern" value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
       -->
    </layout>    
  </appender>

<!-- A size based file rolling appender-->
  <appender name="com.szypt.all" class="org.jboss.logging.appender.RollingFileAppender">
    <param name="File" value="${jboss.server.home.dir}/log/elathen.log"/>
    <param name="Append" value="true"/>
    <param name="MaxFileSize" value="500KB"/>
    <param name="MaxBackupIndex" value="1"/>

    <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>
    </layout>    
  </appender>

  <logger name="com.szypt">
    <level value="DEBUG" />
    <appender-ref ref="com.szypt.all"/>
  </logger> 
分享到:
评论

相关推荐

    apache-log4j-2.17.2-bin.tar

    1. **备份现有配置**:在升级前,先备份现有的Log4j配置文件,以便在必要时恢复。 2. **测试环境验证**:在生产环境部署前,先在测试环境中验证新版本的兼容性和日志记录效果。 3. **更新依赖**:如果你的应用程序...

    log4j的详细配置,log4j.xml和log4j.properties,日志输出到文件,邮件,数据库,控制台等

    Log4j提供了多种配置方式,其中最常用的有两种:XML格式的`log4j.xml`和properties格式的`log4j.properties`。接下来,我们将深入探讨如何通过这两种配置文件来设置日志输出的目标、级别以及格式。 1. **XML配置** ...

    apache-log4j-2.16.0-bin.rar

    在升级过程中,记得备份原有的Log4j2配置文件,以便在出现问题时能够回滚。同时,更新后应进行详尽的测试,确保应用的正常运行不受影响。 总之,Apache Log4j2的这个远程代码执行漏洞是一个严重的安全问题,及时...

    常用log4j配置常用log4j配置

    本文将深入解析《常用log4j配置》中的关键知识点,包括配置文件的格式、基本配置项的含义及其应用场景。 ### 标题:常用log4j配置 #### 配置文件格式 Log4j支持多种配置文件格式,包括.properties和.xml,其中....

    log4j删除前N天日志

    本话题将深入探讨如何使用Log4j中的DailyRollingFileAppender配置来自动删除前N天的日志,以便保持日志文件的大小和数量在可控范围内。 首先,DailyRollingFileAppender是Log4j中的一个Appender实现,它按照日期...

    log4j配置大全-java

    以上是对Log4j配置文件中几个关键部分的解析。通过这些配置,我们可以根据实际需求灵活地调整日志输出方式,包括输出到控制台、文件、网络以及邮件等多种形式。正确配置日志不仅有助于提高程序的可维护性和调试效率...

    log4j简单配置

    #### 二、log4j配置文件的重要性 在使用log4j的过程中,正确配置log4j对于获取有效的日志信息至关重要。如果未正确配置log4j,则可能会导致应用程序无法正常记录日志信息或者记录的日志级别不符合需求,从而影响...

    Log4j简介

    Log4j是一个非常强大且灵活的日志记录框架,通过合理配置可以在Eclipse Java项目中轻松集成,为项目的开发、测试和维护提供有力的支持。通过上述介绍,相信您对Log4j的基本使用已经有了一定的了解。在未来的工作中,...

    log4j从入门到详解

    - `log4j.appender.appender1.MaxBackupIndex`: 设置日志文件滚动后的最大备份数量。 - `log4j.appender.appender1.layout`: 配置日志输出格式。 - `log4j.appender.appender2`: 配置一个控制台输出类型的...

    log4j切割catalina为日滚型的

    标题提到的"log4j切割catalina为日滚型的",指的是使用log4j配置将`catalina.out`的日志数据切割成多个文件,以便于管理和分析。日滚型(RollingFileAppender)是指根据时间或大小自动滚动日志文件的一种策略。这种...

    Strtus2.3升级2.5(包含log4j升级log4j2)所需jar,和相关资料

    5. **配置Log4j2**:Log4j2的配置文件(通常为log4j2.xml或log4j2.json)需要重新编写,以利用新特性并满足日志需求。例如,你可以配置日志分级(DEBUG, INFO, WARN, ERROR等),并实现日志分片以方便日志管理和分析...

    log4j小测试

    【log4j小测试】项目主要探讨了如何在log4j框架中实现同级别日志分文件存储的功能。Log4j作为一款广泛使用的Java日志处理工具,它提供了丰富的配置选项,使得开发者能够灵活地控制日志输出的方式、格式以及存储位置...

    log4j-2.15.0-rc1.zip

    3. 配置调整:根据应用需求,可能需要修改Log4j的配置文件,如log4j2.xml或log4j2.json,以启用新特性或关闭不必要的功能。 4. 测试验证:升级后,进行充分的测试,确保日志记录功能正常,并确认已消除安全风险。 ...

    log4j教程

    通过上述配置,Log4j会将日志信息按指定格式输出到控制台和文件,当文件大小超过10MB时,旧文件会被备份,新的日志信息将写入新的文件中,最多保留10份备份文件。 #### 结语 Log4j作为一款成熟稳定、功能丰富的...

    log4j配置解析

    6. 文件的存储与备份:配置日志文件的存储路径和文件大小限制也是log4j配置中的一个重要环节。比如,可以设置当日志文件达到200MB时就产生一个新的文件,并且只保留最近的10个备份。这样既保证了日志的连续性,也...

    SpringBoot整合log4j223

    在`src/main/resources`目录下创建一个名为`log4j2.xml`或`log4j2.json`的配置文件,例如: ```xml &lt;PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" /&gt; ``` ...

    ElasticSearch 5.4 的测试java工程 依赖包很全 有配置好的log4j

    - **log4j.properties或log4j.xml**:配置文件定义了日志级别(DEBUG, INFO, WARN, ERROR等)、输出目的地(控制台、文件、网络等)以及日志格式。 - **定制化配置**:可以根据需求调整日志级别,例如在开发阶段设置...

    很好的日志记录类,VS2010 MFC写的log4z日志类测试.zip

    1. **配置**:正确配置log4z,包括设置日志文件的位置、大小限制、是否备份旧日志等。 2. **日志级别**:根据需求选择合适的日志级别,避免过多的信息导致性能下降或存储空间耗尽。 3. **性能**:在高并发环境中,...

    Log4cplus使用指南.pdf

    Log4cplus使用指南详细介绍了如何使用Log4cplus这一开源日志系统,其前身是著名的java日志系统log4j。Log4cplus具备线程安全、灵活性和细致的粒度控制,适用于程序开发的全周期,包括调试、运行、测试和维护阶段。它...

    HBase开启审计日志

    除了修改`hbase-site.xml`外,还需要配置`log4j.properties`文件来指定审计日志的具体参数,包括日志文件名、最大文件大小、备份索引等。 - **增加以下配置**: ```properties hbase.security.log.file=...

Global site tag (gtag.js) - Google Analytics