首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从log4j appender中排除一个类

是指在日志记录过程中,排除特定的类不进行日志记录。这通常是为了减少日志输出的噪音,提高日志的可读性和可维护性。

在log4j中,可以通过配置文件或编程方式来实现从appender中排除一个类。以下是一种常见的方法:

  1. 配置文件方式: 在log4j的配置文件(通常是log4j.properties或log4j.xml)中,可以使用log4j.additivity属性来控制是否将日志事件传递给父级logger。通过将该属性设置为false,可以阻止特定类的日志事件传递给appender。例如:
代码语言:txt
复制
log4j.logger.com.example.ExcludedClass=ERROR, appenderName
log4j.additivity.com.example.ExcludedClass=false

上述配置将com.example.ExcludedClass类的日志级别设置为ERROR,并将日志事件发送到名为appenderName的appender。同时,通过设置additivityfalse,阻止该类的日志事件传递给父级logger。

  1. 编程方式: 在代码中,可以使用log4j的API来动态配置日志记录器。以下是一个示例:
代码语言:java
复制
import org.apache.log4j.Logger;
import org.apache.log4j.Level;

public class MyClass {
    private static final Logger logger = Logger.getLogger(MyClass.class);

    public static void main(String[] args) {
        // 设置日志级别为ERROR
        logger.setLevel(Level.ERROR);

        // 从appender中排除该类的日志记录
        logger.setAdditivity(false);
    }
}

上述代码将MyClass类的日志级别设置为ERROR,并将日志事件发送到默认的appender。通过调用setAdditivity(false)方法,排除该类的日志记录。

这样,当com.example.ExcludedClassMyClass中的日志事件被触发时,它们将被发送到指定的appender,并且不会传递给父级logger。

需要注意的是,以上方法仅适用于log4j框架。对于其他日志框架,可能存在不同的配置方式或API调用。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Apache Log4j2详解

简介 Apache Log4j 2是对Log4j的升级,它比其前身Log4j 1.x提供了重大改进,并提供了Logback可用的许多改进,同时修复了Logback架构的一些问题。...特征 API分离 Log4j的API与实现分开,使应用程序开发人员可以清楚地了解可以使用哪些和方法,同时确保向前兼容性。这使Log4j团队能够以安全且兼容的方式进行改进。...与Logback不同,您可以在任何这些情况下使用通用的Filter。 插件架构 Log4j使用插件模式配置组件。...lombok就是一个注解工具jar包,能帮助我们省略一繁杂的代码。...具体介绍可以看我的博客Lombok简介、使用、工作原理、优缺点 使用Lombok后,@Slf4j注解生成了log日志常量,无需去声明一个log就可以在中使用log记录日志。

1.2K30

快速了解常用日志技术(JCL、Slf4j、JUL、Log4j、Logback、Log4j2)

log4jLog4j是Apache下的一款开源的日志框架,通过在项目中使用 Log4J,我们可以控制日志信息输出到控制台、文件、甚至是数据库。...Logback: Logback是由log4j创始人设计的另一个开源日志组件,性能比log4j要好。...绑定没有实现slf4j的日志框架,先添加日志的适配器,再添加实现的依赖 Slf4j有且仅有一个日志实现框架的绑定(如果出现多个默认使用第一个依赖日志实现) slf4j绑定一个框架就行了,如果配置多个的话...2是对Log4j的升级版,参考了logback的一些优秀的设计,并且修复了一些问题,因此带来了一些重大的提升,主要有: 异常处理:在logbackAppender的异常不会被应用感知到,但是在log4j2...无垃圾记录 简介: 版本2.6开始,默认情况下Log4j以“无垃圾”模式运行,其中重用对象和缓冲区,并且尽可能不分配临时对象。

59320

大数据平台如何实现任务日志采集

调用log4j各组件执行顺序: 实现自定义log4j Appender: 继承log4j公共的基:AppenderSkeleton 打印日志核心方法:abstract protected void...然后就可以在log4j中使用了 java任务采集 java任务, 只需要引入我们自己实现自定义的log4j Appender, 我们获取到相关的日志信息就可以进行后续操作....logAppender 实现 将自定义Appender程序打包 将其放到我们的Flink、Spark包下即可 java 程序采集要引入我们的jar,排除其它日志框架引入 采集架构设计...通过log4j appender 将采集的日志发送到接收中心,这里注意搞个buffer,通过http批量发送到接收中心,日志太小过滤掉....log4j 自定义appender,实现了大数据平台相关任务日志的采集,针对不同类型任务的处理,获取最终我们平台搜索需要的功能.

45810

SpringBoot之SpringBoot整合log4j

SpringBoot之SpringBoot整合log4j 添加Maven依赖修改POM.xml 在默认的情况下,SpringBoot自动整合了最简单的logback,那么要想使用log4j就要先排除默认的日志框架...,然后添加log4j场景启动器 ?...修改的是web的场景启动器,增加的是log4j的场景启动器,因为在新版是没有spring-boot-starter的,所以加到了web,记得添加lombok不知道如何集成的,请参考《SpringBoot...查看日志 在这里我发现了一个问题,就是当程序报错的时候明明是error级别的错误,但是log4j打印出来的却是debug级别所以error文件,根本写不进去东西 测试:   log4j控制台输出调为 info...打印出来居然是debug级别的,在网上找了找,说是需要调整到warn级别,再次尝试 emmm都不想贴图了,一点反应没有了,尝试在程序手动打印error级别错误,看看能不能写到文件 ?

5.3K60

Spring Boot(十)Logback和Log4j2集成与日志发展史

1.2 Log4j 因为JUL的缺陷问题,这就给了Log4j机会,所有Log4j一经推出就迅速风靡全球。...1.4 SLF4J SLF4J(Simple Logging Facade For Java)简单日志门面,和JCL功能类似,但JCL有一个致命的缺点就是算法复杂,出现问题难以排除,而SLF4J的诞生就是为了解决...1.5 Logback Logback是Log4j的作者的另一个开源日志组件,与Log4j相比,Logback重新了内核,使它的性能提升了很多,大约是Log4j的10倍,同时占用更小的内存,并且完整的实现了...Log4j2是Log4j的升级,它比其前身Log4j 1.x提供了重大改进,并提供了Logback可用的许多改进,同时修复了Logback架构的一些固有问题。...GitHub的更新日志来看,Logback已经有半年没有更新了,而作为知名组织的Apache下的Log4j2的更新却是非常活跃的,Log4j 1.x 于2015年8月停止维护更新了。

1.5K20

Java日志体系(log4j)

log4j 1.1 简介 Log4j一个由Java编写可靠、灵活的日志框架,是Apache旗下的一个开源项目;现如今,Log4j已经被移植到了C、C++、Python等语言中,服务更多的Developer...,否则该请求被忽略; log4j在Level定义了7个等级,关系如下: Level.ALL < Level.DEBUG < Level.INFO < Level.WARN < Level.ERROR...:日志输出目的地,负责把格式好的日志信息输出到指定地方,可以是控制台、磁盘文件等; 每个日志对象,都有一个对应的appender,每个appender代表着一个日志输出目的地; 其中,log4j...,可自定义,需要与根Logger的appenderName一致; className指的是日志输出目的地处理,必须为全限定名; 举例1: log4j.appender.FILE...在log4j提供的api暂时无法实现此需求,不过jvm向我们提供了一个方法,可以帮助我们实现,这就是jvm关闭钩子程序; 在jvm中注册一个钩子程序,当jvm关闭的时候,会执行系统已经设置的所有通过方法

2K110

Log4j 入门教程

简介 Log4J 是 Apache 的一个开源项目,通过在项目中使用 Log4J,我们可以控制日志信息输出到控制台、文件、GUI 组件、甚至是数据库。...为什么要使用日志 开发阶段发现程序的问题, 排除错误, 产品阶段, 可以记录系统运行的一些状态信息, 程序运行的状态; System.out.println的局限性 不能在运行时打开或者关闭; 不能选择包或者...日志级别 注:一般只使用4个级别,优先级从高到低为 ERROR > WARN > INFO > DEBUG Log4J 在 org.apache.log4j.Level 定义了OFF、FATAL...RollingFileAppender 将日志信息输出到一个日志文件,并且指定文件的尺寸,当文件大 小达到指定尺寸时,会自动把文件改名,同时产生一个新的文件 JDBCAppender 把日志信息保存到数据库..., 当达到指定频度后, 会将log.txt文件记录的之前的日志记录, 重新写入一个名为 log.txt.yyyy-MM-dd-HH-mm的文件, 而此时 log.txt 文件存放的是新生成的日志信息

48110

使用Spring Boot和Log4j2进行高效日志管理:配置详解

--- 本文收录于 《Spring Boot入门到精通》 ,专门攻坚指数提升 本专栏致力打造最硬核 Spring Boot 零基础到进阶系列学习内容,均为全网独家首发,打造精品专栏,专栏持续更新...在Loggers定义了一个名为com.example的Logger,并将它的日志级别设置为debug,并将它的输出Appender设置为Console和RollingFile。...示例配置如下: 图片 使用Log4j2记录日志 在Spring Boot,可以使用注解的方式来记录日志。通过在添加注解@Log4j2,可以自动为该类生成一个Logger对象。...在的方法通过log对象记录了相应的日志信息。 小结 本文介绍了Spring Boot如何整合Log4j2以及相应的配置方法。...首先,需要在pom.xml文件添加Log4j2的依赖;然后,在classpath下创建log4j2.xml配置文件,并定义相应的Appender和Logger;最后,在中使用@Log4j2注解生成Logger

1K30

别小看 Log 日志,它难住了我们组的架构师

,一般用于不规范的引用等信息 info:普通信息 debug:调试信息,一般用于程序执行过程 trace:堆栈信息,一般不使用 all:打开所有日志,最低等级,所有日志都可使用 在 Logger 核心...# ---------------- 定义一个appender------------------------ # 定义一个appenderappender名字可以是任意的, # 如果要使该appender...生效, 须加入到上一行rootLogger, 后面为对应的Appender log4j.appender.appender名字=org.apache.log4j.ConsoleAppender log4j.appender.appender...logback-classic 的地位和作用等同于 Log4J,它也被认为是 Log4J一个改进版,并且它实现了简单日志门面 SLF4J; logback-access 主要作为一个与 Servlet... IO 错误优雅恢复 自动删除日志归档 自动压缩日志成为归档文件 支持 Prudent 模式,使多个 JVM 进程能记录同一个日志文件 支持配置文件中加入条件判断来适应不同的环境 更强大的过滤器

62640

别小看 Log 日志,它难住了我们组的架构师

,一般用于不规范的引用等信息 info:普通信息 debug:调试信息,一般用于程序执行过程 trace:堆栈信息,一般不使用 all:打开所有日志,最低等级,所有日志都可使用 在 Logger 核心...# ---------------- 定义一个appender------------------------ # 定义一个appenderappender名字可以是任意的, # 如果要使该appender...生效, 须加入到上一行rootLogger, 后面为对应的Appender log4j.appender.appender名字=org.apache.log4j.ConsoleAppender log4j.appender.appender...logback-classic 的地位和作用等同于 Log4J,它也被认为是 Log4J一个改进版,并且它实现了简单日志门面 SLF4J; logback-access 主要作为一个与 Servlet... IO 错误优雅恢复 自动删除日志归档 自动压缩日志成为归档文件 支持 Prudent 模式,使多个 JVM 进程能记录同一个日志文件 支持配置文件中加入条件判断来适应不同的环境 更强大的过滤器

30820

log4j 1.x到2.x迁移指南

然后,Log4j 2 会将 log4j.properties、log4j-test.properties、log4j.xml 和 log4j-test.xml 添加到它在路径上搜索的配置文件。...API兼容性 Log4j 2 通过提供包含这些方法的的替代实现来提供对 Log4j 1 日志记录方法的支持。 这些可以在随项目分发的 log4j-1.2-api jar 中找到。...一些库/框架甚至会自动检测其路径某些日志框架实现的存在,并相应地自动切换其内部日志委托; 尝试简单地删除 Log4j v1 依赖项,而不是用此桥替换它,并测试所有依赖项的日志记录是否仍然有效。...在 Log4j 2 ,语法为 Layouts Log4j 1.x 有一个 XMLLayout,它不同于 Log4j 2 的 XmlLayout。...以下是 Log4j 1.x 及其在 Log4j 2 的对应配置的一些示例配置。 示例 1 – 迁移简单的 Console Appender 配置 Log4j 1.x XML 配置 <!

1.8K20

log4j pattern详解_log4j不同的输出到不同文件

spring使用log4j,可以有2种方法。 1、在web.xml里不做任何配置。...yyyy-MM-dd HH:mm:ss,SSS},输出类似:2011-10-18 22:10:28,921 %r: 输出自应用启动到输出该log信息耗费的毫秒数 %c: 输出日志信息所属的类目,通常就是所在的全名...%M(%F:%L)的组合,包括类目名、发生的线程,以及在代码的行数。 %x: 输出和当前线程相关联的NDC(嵌套诊断环境),尤其用到像java servlets这样的多客户多线程的应用。...%%: 输出一个”%”字符 %F: 输出日志消息产生时所在的文件名称 %L: 输出代码的行号 %m: 输出代码中指定的消息,产生的日志具体信息 %n: 输出一个回车换行符,Windows平台为...写入数据库详解 http://blog.csdn.net/ziruobing/article/details/3919501 Log4j学习汇总—–配置详解 http://blog.csdn.net

72620
领券