Sibish
Sibish

Reputation: 908

log4j2 slf4j logging only error

Only error logs are showing in console. No debug, info, warn logs are showing up. Below are the configurations. Can you please let me know what i am doing wrong.

    <dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-slf4j-impl</artifactId>
    <version>2.0-rc1</version>
</dependency>
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-api</artifactId>
    <version>2.0-rc1</version>
</dependency>
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.0-rc1</version>
</dependency>

I used the above depnedencies with the below xml

<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
 <Appenders>
  <File name="A1" fileName="A1.log" append="false">
   <PatternLayout pattern="%t %-5p %c{2} - %m%n"/>
 </File>
 <Console name="STDOUT" target="SYSTEM_OUT">
  <PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
 </Console>
 </Appenders>
 <Loggers>
 <Logger name="org.apache.log4j.xml" level="debug">
  <AppenderRef ref="A1"/>
 </Logger>
 <Logger name="com.mypackage" level="debug">
 <AppenderRef ref="STDOUT"/>
 <AppenderRef ref="A1"/>
 </Logger>
 <Logger name="org.apache.log4j.xml" level="info"/>
 <Root level="info">
  <AppenderRef ref="STDOUT"/>
 </Root>
</Loggers>
</Configuration>

I used the below code to log:

logger.trace("Entering application.");
logger.info("Test");
System.out.println("Hello");
logger.debug("dbg");
logger.error("dbg");
logger.warn("dbgfatal");
logger.error("dbg error");

Upvotes: 2

Views: 7151

Answers (3)

Annadurai Natesan
Annadurai Natesan

Reputation: 1

Your root level should be "debug" and appender ref should be "Console":

<root level='debug'>
    <appender-ref ref='Console'/>
</root>`

Upvotes: -1

Remko Popma
Remko Popma

Reputation: 36844

The config file should be named log4j2.xml and be located in the classpath.

Upvotes: 3

Wirawan Adi
Wirawan Adi

Reputation: 120

your root level should be lower : debug or trace

<Root level="debug">
  <AppenderRef ref="STDOUT"/>
</Root>

Upvotes: 1

Related Questions