前说一下业务需求:
因代码当中调用了第三个接口,所以要对第三方接口单独记录日志,所以配置log4j指定此类的日志输出到指定的文件路径与文件上。不多说看源码:
log4j.rootLogger=ERROR, stdout ,logfile log4j.logger.org.apache=WARN log4j.logger.com.opensymphony=WARN log4j.logger.net.sf=ERROR log4j.logger.net.sf.hibernate=ERROR log4j.logger.net.sf.hibernate.SQL=ERROR log4j.logger.org.hibernate=ERROR log4j.logger.org.springframework=ERROR #log4j.logger.org.springframework.beans=ERROR log4j.logger.org.apache.catalina=ERROR log4j.logger.org.apache.commons=ERROR log4j.logger.org.apache.struts2=ERROR log4j.logger.org.apache.velocity=ERROR log4j.logger.freemarker=WARN log4j.logger.com.mchange.v2=DEBUG log4j.logger.org.apache.jasper.compiler.JspRuntimeContext=ERROR log4j.logger.org.hibernate.type.descriptor.sql.BasicBinder=ERROR log4j.logger.org.hibernate.type=ERROR log4j.logger.org.hibernate.sql=ERROR #-------------------------为指定类定义日志级别与别名 #-------------------------BSS接口 #下面的配置就是给RequestInterfaceUtil配置日志级别与别名 log4j.logger.com.born.wom.utils.RequestInterfaceUtil=INFO,bi #-------------------------H2访问量 #下面的配置就是给BssInterfaceLogUtil配置日志级别与别名 log4j.logger.com.born.wom.utils.BssInterfaceLogUtil=INFO,h2 #-------------------------定义日志记录方式与格式 #-------------------------控制台 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}-%p %t %c - %m%n #-------------------------文件 #日志以文件形式记录 log4j.appender.logfile=org.apache.log4j.RollingFileAppender #指定日志记录路径 log4j.appender.logfile.File=${catalina.base}/logs/system/sys_logs.log #文件最大容量,如果超出新建一个 log4j.appender.logfile.MaxFileSize=512KB #当上面文件容量超出会新建一个文件,但是最多能有几个文件,就是下面这货指定 log4j.appender.logfile.MaxBackupIndex=3 #日志输出格式定义 log4j.appender.logfile.layout=org.apache.log4j.PatternLayout #指定格式 log4j.appender.logfile.layout.ConversionPattern=%d{yyyy MM dd HH\:mm\:ss}-%p %t %c - %m%n #-------------------------BSS接口 log4j.appender.bi=org.apache.log4j.RollingFileAppender log4j.appender.bi.File=${catalina.base}/logs/bssinter/bi_logs.log log4j.appender.bi.MaxFileSize=512MB log4j.appender.bi.MaxBackupIndex=30 #log4j.additivity是 子Logger 是否继承 父Logger 的 输出源。简单来说,我只希望我指定日志只能在指定的日志文件里出显,别滴日志文件里不能出现 log4j.additivity.com.born.wom.utils.RequestInterfaceUtil=false log4j.appender.bi.layout=org.apache.log4j.PatternLayout log4j.appender.bi.layout.ConversionPattern=%d{yyyy MM dd HH\:mm\:ss}-%p %t %c - %m%n #-------------------------H2访问量 log4j.appender.h2=org.apache.log4j.RollingFileAppender log4j.appender.h2.File=${catalina.base}/logs/h2/h2_logs.log log4j.appender.h2.MaxFileSize=1024MB log4j.appender.h2.MaxBackupIndex=3000 log4j.additivity.com.born.wom.utils.BssInterfaceLogUtil=false log4j.appender.h2.layout=org.apache.log4j.PatternLayout log4j.appender.h2.layout.ConversionPattern=%d{yyyy MM dd HH\:mm\:ss}-%p - %m%n
相关推荐
接下来,我们谈谈如何自定义日志输出格式。Log4j的输出格式主要通过`Layout`组件来控制,最常见的`PatternLayout`允许我们使用占位符来指定输出格式。例如,`%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n`会输出...
总结来说,动态设置Log4j的日志级别是提高应用灵活性的重要手段,可以根据运行时的需求调整日志输出的详细程度,同时避免不必要的重启操作。通过配置文件、API、JMX以及Web界面等多种方式,开发者可以方便地实现这一...
3. **自定义日志输出目的地**:Log4j支持将日志输出到控制台、文件、数据库甚至网络。通过配置`Appender`,我们可以选择将日志发送到自定义的位置,如自定义的FTP服务器或者HTTP接口。 4. **自定义日志过滤器**:...
在项目的配置文件(通常是`log4j.properties`或`log4j.xml`)中,需要定义这些自定义级别的输出目的地和格式,这样日志处理器才能正确地处理并记录这些级别的信息。 5. **在代码中使用**: 最后,应用程序中的...
要实现输出多个自定义路径的日志文件,我们需要在Log4j的配置文件(通常是`log4j.properties`或`log4j.xml`)中定义多个Appender。Appender是Log4j中负责将日志信息输出到指定目的地的组件,例如文件、控制台、网络...
使用Log4j2的Layout组件定义日志输出格式。例如,我们可以使用PatternLayout,并自定义模式来指定哪些字段需要脱敏。例如,`%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n` 是一个基本的日志...
本文将深入讲解如何配置log4j以实现日志输出到控制台和文件,并提供相关代码实例和案例分析。** ### 一、Log4j简介 Log4j是Apache组织开发的一个开源项目,用于生成日志信息。它提供了灵活的配置方式,支持多种输出...
Log4j是一款广泛使用的日志框架,它允许开发者自定义日志输出的方式,包括输出路径、日志级别和格式。在某些情况下,可能需要将不同类型的日志输出到不同的文件中,以方便管理和分析。本文将详细讲解如何使用Log4j...
参照了几个网上大神配置,部分教程的描述有误,最终调试完成,可以实现kettle日志输出,测试版本...需要替换的文件为,Kettle的程序目录下data-integration-6.0\plugins\kettle5-log4j-plugin中有一个log4j.xml文件。
在IT行业中,日志记录是系统调试和故障排查的关键环节,Log4net作为一个强大的日志框架,被广泛应用于.NET应用程序中。本主题聚焦于如何利用Log4net将自定义信息,如变量、属性或字段,存储到数据库中,这对于监控...
总结来说,Log4j提供了丰富的功能来满足日志输出的需求。通过配置多个Appender,我们可以实现日志的多文件输出;通过定制日志级别,我们可以更精细化地控制日志记录。这使得在复杂的项目环境中,日志管理变得更加...
在“Log4j2实现不同线程不同级别日志输出到不同的文件中”这个主题中,我们将深入探讨如何利用Log4j2实现这一高级日志管理需求。 1. **日志级别**: - 在Log4j2中,日志级别包括DEBUG、INFO、WARN、ERROR、FATAL...
Log4j是一个广泛使用的Java日志框架,它提供了强大的日志处理功能,包括日志级别控制、自定义日志格式、多路复用等。然而,由于Android系统对第三方库的限制,直接在Android工程中使用Log4j需要一些额外的步骤。本文...
例如,若要将日志输出到名为"tomcat.log"的文件,并设置日志级别为INFO,"log4j.properties"文件可能包含以下内容: ``` log4j.rootLogger=INFO, FILE log4j.appender.FILE=org.apache.log4j.FileAppender log4j....
Log4j通过配置文件(通常是log4j.properties或log4j.xml)来设定日志输出级别、格式、目的地等参数。如果日志没有按预期输出,我们需要检查以下几个方面: 1. **配置文件**:确认配置文件是否正确包含在项目中,...
在`MyLogger`类中,我们可以使用这个类名来设置Log4j的`MDC`(Mapped Diagnostic Context),以确保日志输出时显示正确的类名: ```java public class MyLogger implements Log { private final String className;...
### 基于Log4J的日志输出组件设计的关键知识点 #### 1. 引言:日志管理的重要性 在软件开发与系统运行过程中,日志管理占据着至关重要的地位。据统计,在一个软件系统中,日志输出相关的代码量约占总代码量的4%...
这是log4j框架的配置文件,使用Java Properties格式,用于定义日志输出的行为。主要包括以下几个核心部分: 1. **Logger**: 定义日志级别,例如DEBUG、INFO、WARN、ERROR和FATAL。日志级别决定了哪些信息会被记录。...
4. **创建 log4j.properties 文件**:在 `WEB-INF/classes` 目录下创建 `log4j.properties` 文件,并指定日志的级别、输出目的地等。 ```properties log4j.rootLogger=DEBUG, A1 log4j.appender.A1=org.apache....
4. 定义日志输出格式:通过配置log4j.appender.CATALINA.layout为org.apache.log4j.PatternLayout,可以定义日志的格式。例如,可以设置为%d{yyyy-MM-ddHH:mm:ss.SSS}%p[%t]%c|%m%n来让日志格式和Log4j保持一致。 5...