Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Log4j意外的额外日志_Java_Logging_Ldap_Log4j - Fatal编程技术网

Java Log4j意外的额外日志

Java Log4j意外的额外日志,java,logging,ldap,log4j,Java,Logging,Ldap,Log4j,我的日志输出充满了我不应该看到的意外额外信息。我刚刚将Log4j添加到我公司的一个Java项目中,这正在发生 文件:log4j.properties log4j.rootCategory=info,console log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.target=System.out log4j.appender.console.immediateFlush=true lo

我的日志输出充满了我不应该看到的意外额外信息。我刚刚将Log4j添加到我公司的一个Java项目中,这正在发生

文件:log4j.properties

log4j.rootCategory=info,console

log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.out
log4j.appender.console.immediateFlush=true
log4j.appender.console.encoding=UTF-8
#log4j.appender.console.threshold=info

log4j.appender.console.layout=org.apache.log4j.PatternLayout
# log4j.appender.console.layout.conversionPattern=%d{yyyy-MM-dd'T'HH:mm:ss.SSSZ} %p %m%n
log4j.appender.console.layout.conversionPattern=%d{yyyy-MM-dd'T'HH:mm:ss.SSSZ} %p %m%n

文件:Main.java


import java.io.File;
import java.util.Properties;

import org.apache.directory.api.ldap.model.entry.Entry;
import org.apache.directory.api.ldap.model.exception.LdapException;
import org.apache.directory.api.ldap.model.message.SearchRequest;
import org.apache.directory.api.ldap.model.message.SearchResultDone;
import org.apache.directory.api.ldap.model.message.SearchResultEntry;
import org.apache.directory.api.ldap.model.message.SearchResultReference;
import org.apache.directory.api.ldap.model.name.Dn;
import org.apache.directory.api.ldap.model.schema.*;
import org.apache.directory.api.ldap.model.schema.registries.AttributeTypeRegistry;
import org.apache.directory.server.core.DefaultDirectoryService;
import org.apache.directory.server.core.api.DirectoryService;
import org.apache.directory.server.core.api.InstanceLayout;
import org.apache.directory.server.core.api.filtering.EntryFilteringCursor;
import org.apache.directory.server.core.api.interceptor.Interceptor;
import org.apache.directory.server.core.api.interceptor.context.*;
import org.apache.directory.server.core.api.schema.SchemaPartition;
import org.apache.directory.server.core.authn.AuthenticationInterceptor;
import org.apache.directory.server.core.authn.Authenticator;
import org.apache.directory.server.core.shared.DefaultDnFactory;
import org.apache.directory.server.ldap.LdapServer;
import org.apache.directory.server.ldap.LdapSession;
import org.apache.directory.server.ldap.handlers.extended.StartTlsHandler;
import org.apache.directory.server.ldap.handlers.LdapRequestHandler;
import org.apache.directory.server.ldap.handlers.LdapResponseHandler;
import org.apache.directory.server.ldap.handlers.request.SearchRequestHandler;
import org.apache.directory.server.protocol.shared.transport.TcpTransport;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;

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

    public static void main(String[] args) throws Exception {

        File log4jPropertiesFile = new File("log4j.properties");
            if (log4jPropertiesFile.canRead()) {
                    PropertyConfigurator.configure(log4jPropertiesFile.getAbsolutePath());
                } else {
                    System.out.println("ERROR: Can't read log4j properties file.");
                    Properties log4jProps = new Properties();
                    log4jProps.put("log4j.rootLogger", "OFF");
                    PropertyConfigurator.configure(log4jProps);
                }
                Main.logger.info("Logging started");

        DirectoryService directoryService = new DefaultDirectoryService(); // THIS LINE IS THE START OF THE PROBLEM
        Main.logger.info("Starting program...")
执行此行时:

DirectoryService DirectoryService=newdefaultdirectoryservice()

我看到了大量的产出。例如:


2021-04-09T13:26:04.658-0700 INFO Registered pre-bundled control factory: 1.3.6.1.4.1.18060.0.0.1
2021-04-09T13:26:04.659-0700 INFO Registered pre-bundled control factory: 2.16.840.1.113730.3.4.7
2021-04-09T13:26:04.659-0700 INFO Registered pre-bundled control factory: 2.16.840.1.113730.3.4.2
2021-04-09T13:26:04.659-0700 INFO Registered pre-bundled control factory: 2.16.840.1.113730.3.4.18
2021-04-09T13:26:04.660-0700 INFO Registered pre-bundled control factory: 1.2.840.113556.1.4.319
2021-04-09T13:26:04.660-0700 INFO Registered pre-bundled control factory: 2.16.840.1.113730.3.4.3
2021-04-09T13:26:04.660-0700 INFO Registered pre-bundled control factory: 1.3.6.1.4.1.4203.1.10.1
2021-04-09T13:26:04.661-0700 INFO Registered pre-bundled control factory: 1.3.6.1.4.1.18060.0.0.1
2021-04-09T13:26:04.661-0700 INFO Registered pre-bundled control factory: 2.16.840.1.113730.3.4.7
2021-04-09T13:26:04.661-0700 INFO Registered pre-bundled control factory: 2.16.840.1.113730.3.4.2
2021-04-09T13:26:04.661-0700 INFO Registered pre-bundled control factory: 2.16.840.1.113730.3.4.18
2021-04-09T13:26:04.661-0700 INFO Registered pre-bundled control factory: 1.2.840.113556.1.4.319
2021-04-09T13:26:04.661-0700 INFO Registered pre-bundled control factory: 2.16.840.1.113730.3.4.3
2021-04-09T13:26:04.661-0700 INFO Registered pre-bundled control factory: 1.3.6.1.4.1.4203.1.10.1
2021-04-09T13:26:04.661-0700 INFO Registered pre-bundled control factory: 1.3.6.1.4.1.42.2.27.8.5.1
2021-04-09T13:26:04.662-0700 INFO Registered pre-bundled control factory: 2.16.840.1.113730.3.4.9
2021-04-09T13:26:04.662-0700 INFO Registered pre-bundled control factory: 2.16.840.1.113730.3.4.10
2021-04-09T13:26:04.662-0700 INFO Registered pre-bundled control factory: 1.3.6.1.4.1.4203.1.9.1.3
2021-04-09T13:26:04.663-0700 INFO Registered pre-bundled control factory: 1.3.6.1.4.1.4203.1.9.1.4
2021-04-09T13:26:04.663-0700 INFO Registered pre-bundled control factory: 1.3.6.1.4.1.4203.1.9.1.1
2021-04-09T13:26:04.663-0700 INFO Registered pre-bundled control factory: 1.3.6.1.4.1.4203.1.9.1.2
2021-04-09T13:26:04.663-0700 INFO Registered pre-bundled control factory: 1.2.840.113556.1.4.473
2021-04-09T13:26:04.664-0700 INFO Registered pre-bundled control factory: 1.2.840.113556.1.4.474
2021-04-09T13:26:04.664-0700 INFO Registered pre-bundled control factory: 1.2.840.113556.1.4.841
2021-04-09T13:26:04.665-0700 INFO Registered pre-bundled control factory: 1.2.840.113556.1.4.417
2021-04-09T13:26:04.665-0700 INFO Registered pre-bundled control factory: 1.2.840.113556.1.4.1413
2021-04-09T13:26:04.666-0700 INFO Registered pre-bundled control factory: 1.2.840.113556.1.4.528
2021-04-09T13:26:04.667-0700 INFO Registered pre-bundled extended operation factory: 1.3.6.1.1.8
2021-04-09T13:26:04.668-0700 INFO Registered pre-bundled extended operation factory: 1.3.6.1.4.1.18060.0.1.8
2021-04-09T13:26:04.669-0700 INFO Registered pre-bundled extended operation factory: 1.3.6.1.4.1.18060.0.1.3
2021-04-09T13:26:04.669-0700 INFO Registered pre-bundled extended operation factory: 1.3.6.1.4.1.18060.0.1.6
2021-04-09T13:26:04.670-0700 INFO Registered pre-bundled extended operation factory: 1.3.6.1.4.1.18060.0.1.5
2021-04-09T13:26:04.671-0700 INFO Registered pre-bundled extended operation factory: 1.3.6.1.4.1.4203.1.11.1
2021-04-09T13:26:04.671-0700 INFO Registered pre-bundled extended operation factory: 1.3.6.1.4.1.4203.1.11.3
2021-04-09T13:26:04.672-0700 INFO Registered pre-bundled extended operation factory: 1.3.6.1.4.1.1466.20037
2021-04-09T13:26:04.812-0700 INFO No version information : assuming version: 1
我的日志里没有这些东西。据我所知,我正在通过DirectoryService对象从一些Apache库中获取日志输出

我不明白怎么做,我想禁用该行为,以便我的日志保持干净。如果我在这里禁用“控制台”,我将无法看到其他预期输出

#log4j.rootCategory=info,console
log4j.rootCategory=info 

您将发现这些日志是从哪些包生成的,因此可以在转换模式中添加“%c{10}”,以便在日志消息之前打印包。 然后,您可以禁用特定包的日志或更改日志级别,例如

log4j.logger.com.foo.bar=ERROR

谢谢。你的建议奏效了,现在我的项目可以配置了。尽管我发现调用shell脚本传递了额外的参数=“-Djavax.net.debug=all-Dlog4j.logger.org.apache.directory.server=INFO”,这导致了额外的意外输出!