How to set log4j.properties in Eclipse?

44,060

Solution 1

Your log4j.properties should reside inside the src folder. That way, Log4J will configure itself automatically, without you needing to write code.

Solution 2

  1. There is nothing about imports;

  2. It's not about the file place, as you see this message "log4j:WARN No appenders could be found for logger...", so please check the content of your log4j configuration file. Here's a demo:

    log4j.rootLogger=INFO, myConsoleAppender log4j.appender.myConsoleAppender=org.apache.log4j.ConsoleAppender log4j.appender.myConsoleAppender.layout=org.apache.log4j.PatternLayout log4j.appender.myConsoleAppender.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

  3. The default log4j configuration file is "log4j.properties", and as someone had said it should be place in the src folder.

Solution 3

According to your project structure, there is no log4j-jms.properties.There is log4j.properties. So change your log4j properties file name.

Share:
44,060
alicjasalamon
Author by

alicjasalamon

UX student at Tampere University of Technology in Finland

Updated on August 13, 2020

Comments

  • alicjasalamon
    alicjasalamon over 3 years

    I'm trying to run this example, but I have some problems with configuration.

    I copied log4j-jms.properties, jndi.properties, Log4jJMSAppenderExample.java

    ProjectJMS
    |
    \_ src
    |   \_ Log4jJMSAppenderExample.java
    |   \_ jndi.propeties
    \_ log4j-jms.properties
    

    and run activemq in my console.

    When I ran my example I got

    log4j:WARN No appenders could be found for logger (org.apache.activemq.transport.WireFormatNegotiator).
    log4j:WARN Please initialize the log4j system properly.
    log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.`PropertyConfigurator.configure("log4j-jms.properties");`
    

    so I added

    PropertyConfigurator.configure("log4j-jms.properties");
    

    Now I can see logs in Eclipse console, but still with this warning

    log4j:WARN No appenders could be found for logger (org.apache.activemq.transport.WireFormatNegotiator).
    log4j:WARN Please initialize the log4j system properly.
    log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
    2012-08-13 10:21:44,741 INFO  Log4jJMSAppenderExample - Test log
    Received log [INFO]: Test log
    

    and in console with activemq I got

     WARN | Transport Connection to: tcp://127.0.0.1:2005 failed: java.net.SocketException: Connection reset
    

    Why am I getting these warnings?

    1. Are my imports wrong?

      import javax.jms.Connection;
      import javax.jms.Message;
      import javax.jms.MessageConsumer;
      import javax.jms.MessageListener;
      import javax.jms.Session;
      
      import org.apache.activemq.ActiveMQConnectionFactory;
      import org.apache.activemq.command.ActiveMQObjectMessage;
      import org.apache.log4j.Logger;
      import org.apache.log4j.PropertyConfigurator;
      import org.apache.log4j.spi.LoggingEvent;
      
    2. Are my files in wrong place?

    3. How to set configuration file in Eclipse? Without using PropertyConfigurator.configure("log4j-jms.properties");? There is no line like this in example I follow.