`
raymond2006k
  • 浏览: 295089 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

log4j最佳配置备份

阅读更多
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">	
	<!-- 业务日志,生产环境使用。hekun -->
	<appender name="BCSS_LOG" class="org.apache.log4j.DailyRollingFileAppender">
		<param name="File" value="log/bcss.log" />
		<param name="Append" value="true" />
		<param name="DatePattern" value="'.'yyyy-MM-dd-HH" />
		<layout class="org.apache.log4j.PatternLayout">
			<param name="ConversionPattern" value="%d %t [%-5p] (%F,%L) - %m%n" />
		</layout>
	</appender>
	
	<!-- JOP框架底层日志,分析框架问题时使用。hekun -->
	<appender name="JOP_LOG" class="org.apache.log4j.DailyRollingFileAppender">
		<param name="File" value="log/jop.log" />
		<param name="Append" value="true" />
		<param name="DatePattern" value="'.'yyyy-MM-dd-HH" />
		<layout class="org.apache.log4j.PatternLayout">
			<param name="ConversionPattern" value="%d %t (%F,%L) - %m%n" />
		</layout>
	</appender>

	<!-- 控制台日志,开发阶段使用-->
	<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
		<param name="Target" value="System.out" />
		<param name="Threshold" value="DEBUG"/>		
		<layout class="org.apache.log4j.PatternLayout">
			<param name="ConversionPattern" value="%d %t [%-5p](%F,%L) - %m%n" />
		</layout>
	</appender>

	<!-- 默认的异步文件日志输出,生产环境都采用此appender -->
	<appender name="ASYNC_BCSS_LOG" class="org.apache.log4j.AsyncAppender">       
     <param name="BufferSize" value="256"/>    
     <param name="LocationInfo" value="true"/>  
	 <appender-ref ref="BCSS_LOG"/> 
   </appender>
   
   	<!-- 默认的异步文件日志输出,生产环境都采用此appender -->
	<appender name="ASYNC_JOP_LOG" class="org.apache.log4j.AsyncAppender">       
     <param name="BufferSize" value="512"/>    
     <param name="LocationInfo" value="true"/>  
	 <appender-ref ref="JOP_LOG"/> 
   </appender>

	<!-- console 异步日志,开发环境都使用此appender,方便调试 -->
   <appender name="ASYNC_CONSOLE" class="org.apache.log4j.AsyncAppender">       
     <param name="BufferSize" value="64"/>    
     <param name="LocationInfo" value="true"/>
	 <appender-ref ref="CONSOLE"/> 
   </appender>
	
		
    <!-- 监控数据,启用监控功能时使用 -->
	<appender name="MONITOR_SQLLOG" class="com.xxx.xxxx.infrastructure.log4j.JDBCExtAppender">
		<param name="driver" value="oracle.jdbc.driver.OracleDriver"/>
		<param name="URL" value="jdbc:oracle:thin:@10.200.5.200:1521:BOSS15TEST"/>
		<param name="User" value="jop"/>
		<param name="Password" value="jop"/>
		<param name="sql" value="insert into SYS_ACCTMONITOR(ID,STARTTIME, USETIME,PARENTFLOWNO,IP,CLIENT,OPERATOR,TARGETSYSTEM,TARGETMODULE,TARGETFUNCTION,TARGETOPERATION,PARAMLIST,RESULTSTATUS,RESULTCODE) values (SYS_ACCTMONITOR_SEQ.nextval,to_timestamp('@starttime@','yyyy-MM-dd hh24:mi:ss.ff'), @usetime@, '@parentflowno@','@ip@','@client@','@operator@','@targetsystem@','@targetmodule@','@targetfunction@','@targetoperation@','@paramlist@','@resultstatus@','@resultcode@')"/>
	</appender>
	
	
	<!-- 监控数据记录异步化,只能给监控 com.xxx.xxxx.monitor 使用,其他logger不得使用此 appender -->
	<appender name="ASYNC_MONITOR_SQLLOG" class="org.apache.log4j.AsyncAppender">       
     <param name="BufferSize" value="1024"/>    
     <param name="LocationInfo" value="true"/>
	 <appender-ref ref="MONITOR_SQLLOG"/> 
   </appender>
   
 
	<category name="com.xxx.xxxx.monitor"> <!-- 监控需要特殊控制,输出到自己的appender -->
		<param name="additivity" value="false"/> 
		<priority value="DEBUG" />
		<appender-ref ref="ASYNC_MONITOR_SQLLOG" />
	</category>
	
	<!-- Hibernate log,需要特殊控制,使用 TRACE级别 -->
	<category name="org.hibernate.SQL">
		<param name="additivity" value="false"/> 
		<priority value="TRACE" />		
		<appender-ref ref="ASYNC_BCSS_LOG" /> <!-- ASYNC_Hibernate_SQL -->
	</category>
		
	<category name="org.hibernate.type">
		<param name="additivity" value="false"/> 
		<priority value="WARN" />		
		<appender-ref ref="ASYNC_BCSS_LOG" />  <!-- ASYNC_Hibernate_SQL -->
	</category>
	
	<category name="org.hibernate.cache">
		<param name="additivity" value="false"/> 
		<priority value="WARN" />	
		<appender-ref ref="ASYNC_JOP_LOG" /> 		
	</category>
		
	<category name="com.googlecode.hibernate.memcached"> <!-- L2,query cache 分布式缓存, -->
		<param name="additivity" value="false"/>   
		<priority value="WARN" />	
		<appender-ref ref="ASYNC_JOP_LOG" /> 		
	</category>

   <!-- 默认所有业务日志输出到文件 bcss.log, 异步输出; 其他特殊控制,如:缓存日志输出到jop.log -->
	<root>
		<priority value="INFO" />		
		<appender-ref ref="ASYNC_BCSS_LOG" />		<!-- 生产环境 ASYNC_BCSS_LOG -->			
	</root>
</log4j:configuration>
分享到:
评论
2 楼 java-xp 2012-03-29  
谢谢分享,很详细
1 楼 冒烟鱼 2009-08-19  
受用了,谢谢

相关推荐

    Log4J_全能配置文件.pdf

    ### Log4J 全能配置文件详解 #### 一、概述 Log4J是一款非常流行的Java日志框架,被广泛应用于各种规模的应用程序中。它提供了灵活的日志记录机制,可以将日志输出到不同的目的地,如控制台、文件、数据库等,并且...

    log4j xmlweb最佳配置备份

    根据提供的文件信息,我们可以深入探讨Log4j框架的配置与最佳实践。Log4j是一个流行的Java日志框架,被广泛应用于各种规模的应用程序中。它提供了灵活的日志记录功能,可以方便地定制日志级别、格式及输出目标等。...

    log4j-2.7api+core包

    4. **log4j2.xml配置**:`log4j2.xml`是Log4j 2.x的配置文件,定义了日志记录的策略,包括日志级别、Appender(输出目标)、Layout(输出格式)、Filter(过滤规则)等。正确的配置能够确保日志的有效性和安全性,...

    The Complete Log4j Manual

    通常,一本完整的手册会包括以下几个部分:介绍Log4j的基础知识、详细说明如何配置和使用Log4j、示例和最佳实践、高级配置技巧、性能优化建议、以及Log4j的二次开发等方面内容。读者可以根据个人需要,找到对应章节...

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

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

    log4j输出位置配置

    首先,我们要理解Log4j的核心配置文件——`log4j.properties`。这个文件使用键值对的形式定义了日志的行为和输出设置。在`log4j.properties`中,有以下几个关键配置项与日志输出位置有关: 1. **appender**: 这个...

    log4j.properties详解与例子

    本文将深入解析`log4j.properties`配置文件,以及如何配置Logger、Appender和Layout。 首先,创建`log4j.properties`文件是启动Log4j功能的第一步。这个文件通常放在项目的`classes`目录下,以确保在运行时可以被...

    日志管理Log4j学习笔记

    - `log4j.appender.R`:配置滚动文件Appender,设置文件路径、最大文件大小及备份索引。 - `log4j.appender.R.layout.ConversionPattern`:定义滚动文件输出的格式化模式。 #### 四、使用场景与最佳实践 - **...

    log4j 手册

    Log4j手册提供了关于如何安装和配置Log4j库的详细指南,以及如何在不同的环境和应用程序中集成Log4j的示例和最佳实践。此外,手册还介绍了高级主题,如性能优化、安全性和使用Log4j 2(这是Log4j项目的后续版本,...

    Log4jToRollingFileAppender.zip

    使用`RollingFileAppender`首先需要在`log4j.properties`或`log4j.xml`配置文件中进行设置。例如: ``` log4j.appender.RFA=org.apache.log4j.DailyRollingFileAppender log4j.appender.RFA.File=/path/to/log...

    apache-log4j-1.2.15

    5. **Configurator(配置器)**:配置器是设置Log4j属性的接口,通常通过`log4j.properties`或`log4j.xml`文件进行配置。 **`log4j.properties`配置文件** 在提供的`log4j.properties`文件中,开发者可以定义...

    log4j.properties.zip

    `log4j.properties`是Log4j框架的核心配置文件,用于定义日志输出的行为,包括日志级别、输出目的地、格式等。下面我们将从以下几个方面来探讨这个配置文件: 1. **日志级别**: - `DEBUG`:详细信息,用于开发...

    修复重大漏洞 log4j2最新2.15.0-rc2 jar包

    Log4j2是一款广泛使用的Java日志记录框架,它提供了灵活的日志配置和丰富的日志输出格式。然而,近期Log4j2曝出一个重大的安全漏洞,被称为CVE-2021-44228,也被称为“Log4Shell”漏洞。这个漏洞允许攻击者通过恶意...

    log4j_appender:带有MaxBackupIndex的DailyRollingFileAppender

    配置`DailyRollingFileAppender`时,我们需要在Log4j的配置文件(通常是`log4j.properties`或`log4j.xml`)中指定以下内容: ```properties # 配置DailyRollingFileAppender log4j.appender.DailyRollingFile=org....

    SpringframeworkMVC配置[收集].pdf

    在配置Log4j时,我们会在`Log4j.properties`文件中定义日志的级别(如INFO)、输出方式(控制台或文件)以及具体的格式。例如,上述配置设置了两种输出方式:控制台输出和滚动文件输出。文件大小限制和备份策略也...

    java备份还原数据库

    - 使用日志框架(如Log4j或SLF4J)记录操作的详细信息。 8. **并发和多线程** - 如果需要同时备份多个数据库,可以使用Java的多线程技术,例如`Thread`或`ExecutorService`。 9. **自动化** - 利用Java的定时...

    项目备份.server

    4. **日志配置**:如log4j.properties或logback.xml,定义了应用的日志记录级别、输出目的地和格式,对于问题排查和性能监控至关重要。 5. **环境变量和脚本**:可能包含启动、停止、重启服务器的脚本,以及环境...

    华大单片机J-Flash补丁包

    在使用华大单片机J-Flash补丁包时,开发者需要注意的是,更新这些文件可能会影响到其他非华大单片机的设备支持,因此在进行操作前,最好备份原有的文件,以备不时之需。同时,确保J-Flash软件版本与补丁包相匹配,...

    Log函数生成代码

    - **Java**:可以使用内置的`java.util.logging.Logger`,或者使用第三方库如log4j、logback。 - **Python**:Python的标准库提供了`logging`模块,可以方便地配置和使用日志。 - **JavaScript**:Node.js中可以...

    iBase4J工程源码

    `Log4j`或`SLF4J`这类日志框架,用于记录系统运行日志,帮助排查问题。 在部署过程中,你可能需要配置Tomcat或Jetty等应用服务器,以及MySQL、Oracle等数据库。同时,还需要关注环境变量设置、数据库连接配置、...

Global site tag (gtag.js) - Google Analytics