Hello,

Today I noticed that slf4j/logback sometimes logs the entire contents of an array and sometimes just logs the first element. Here is a test app:

public class LogbackTest {
protected static final Logger log = LoggerFactory.getLogger(LogbackTest.class);

    public static final void main(String[] args) {
        String[] array = {"one", "two", "three"};

        log.info("Just the array <{}>", array);
        log.info("a var then the array {} <{}>", 10, array);
        log.info("the array <{}> then a var {}", array, 10);
    }
}

The output I get is:
12:54:19.366 [main] INFO  c.l.n.m.LogbackTest - Just the array <one>
12:54:19.372 [main] INFO c.l.n.m.LogbackTest - a var then the array 10 <[one, two, three]> 12:56:52.497 [main] INFO c.l.n.m.LogbackTest - the array <[one, two, three]> then a var 10

When there is a single "{}" placeholder only the first element of the array is output. When there are two placeholders all the elements are output.

This is slf4j 1.6.1 and logback classic/core 0.9.27.

Is this the expected behavior?

thanks,
Colin
_______________________________________________
slf4j-user mailing list
[email protected]
http://mailman.qos.ch/mailman/listinfo/slf4j-user

Reply via email to