当前位置: 首页 > 知识库问答 >
问题:

隐藏log4j日志

呼延永新
2023-03-14

我用log4j来显示日志。。。

我使用的是xml配置,下面是log4j。我正在使用的xml:

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
    <appender name="stderr" class="org.apache.log4j.ConsoleAppender">
        <param name="threshold" value="warn" />
        <param name="target" value="System.err"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%-5p %d [%t][%F:%L] : %m%n" />
        </layout>
    </appender>
    <appender name="stdout" class="org.apache.log4j.ConsoleAppender">
        <param name="threshold" value="debug" />
        <param name="target" value="System.out"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%-5p %d [%t][%F:%L] : %m%n" />
        </layout>
        <filter class="org.apache.log4j.varia.LevelRangeFilter">
            <param name="LevelMin" value="debug" />
            <param name="LevelMax" value="info" />
        </filter>
    </appender>
    <root>
        <priority value="ERROR"></priority>
        <appender-ref ref="stderr" />
        <appender-ref ref="stdout" />
    </root>
</log4j:configuration>

当我执行一个主类时,我只希望在控制台中有错误日志。。但是Log4j仍然显示它的日志:

log4j: Trying to find [log4j.xml] using context classloader sun.misc.Launcher$AppClassLoader@72ea2f77.
log4j: Using URL [file:/Users/***/jpa-model/target/classes/log4j.xml] for automatic log4j configuration.
log4j: Preferred configurator class: org.apache.log4j.xml.DOMConfigurator
log4j: System property is :null
log4j: Standard DocumentBuilderFactory search succeded.
log4j: DocumentBuilderFactory is: com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
log4j: debug attribute= "false".

我有没有可能隐藏log4j日志?

我已尝试自行启动记录器并将液位设置为OFF,但log4j仍显示其正确的日志:

private static final Logger log = Logger.getLogger(HibernateTest.class.getName());

public static void main(String[] args) {
    log.setLevel(Level.OFF); 

谢谢你

共有1个答案

东郭臻
2023-03-14

试试这个,对我有用:

log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d %-6p [%c] %m%n
log4j.appender.console.filter.1=org.apache.log4j.varia.StringMatchFilter
log4j.appender.console.filter.1.StringToMatch=Artifact
log4j.appender.console.filter.1.AcceptOnMatch=true
log4j.appender.console.filter.2=org.apache.log4j.varia.DenyAllFilter
 类似资料:
  • 我们想隐藏“有优惠券吗?添加一张…”在WooCommerce结账时,如果已添加优惠券或客户在结账页面上添加优惠券。 目前,我们在下面有此代码,当客户在购物车页面输入优惠券,然后导航到结帐页面时,此代码有效。在这种情况下,“拥有优惠券?添加一张…”消息不可见。如果购物车页面上未添加优惠券,则消息可见。 这很好用!但是,当客户在结账页面上添加优惠券时,它不起作用。 1.)我们收到消息“优惠券已添加”,

  • 问题:如果距离为空/null,我试图隐藏一个值。 我尝试了以下操作,但该值仍在显示: 和 什么是实现我所期待的正确方法。 以下是我在coldfusion中定义距离的方式: 当我做以下建议时: ng-show="e.distance===未定义" 当我执行其他建议时,例如ng hide=“e.distance”, 以下是提供商包含的内容:

  • 当我记录包含用户名和密码的Http POST消息时,我想从我的log4j日志中隐藏用户名和密码。我删除了本例中的真实用户名和密码: 我有一个log4j。属性文件,其中rootlogger设置为DEBUG。我尝试使用以下行仅在信息级别进行登录: 但它们都不起作用。我尝试过这个方法,但效果很好: 唯一的问题是,调试级别上的所有日志记录也被隐藏。我真的只想在可能的情况下隐藏用户名和密码。或者调整粒度,这

  • 输入一个语句后按回车键,MATLAB自动在屏幕上显示结果,但如果该行命令是以";"结尾,则MATLAB仍会进行运算赋值,但不显示任何输出结果.这一点在生成复杂矩阵时特别有用.例如: A = magic(100);

  • 我一直在试图从树景中隐藏项目。我使用一个自定义数据类型作为源(称为SettingsMenuItem),它继承自FrameworkElement(目前是FrameworkContentElement,因为否则TreeView会呈现错误的数据)。

  • Linux 下,名称中第一个字符为 . 的文件或者文件夹,系统会将它们隐藏起来。传统上,这种文件大多是用户的配置文件。 您可以尝试以下操作: cd ~ #进入您的用户目录 ls #查看当前目录下的文件列表 ls -a #查看所有文件的文件列表(包括隐藏文件)。 如果您只想查看隐藏文件,而不包括这两个特殊目录,您可以使用 ls 命令的选项 -A (ls -A) 每个目录下都包含