I wrote https://issues.apache.org/jira/browse/LOG4J2-2345 for this issue. It is very easily reproduced, and I've included a sample program that shows the problem. However, having never looked at the log4j source, I'm not confident I'll be able to submit a patch or pull request.
~ Joe ~ On Tue, May 29, 2018 at 6:42 PM Remko Popma <remko.po...@gmail.com> wrote: > No, this is not a known issue. > Please raise a ticket on the JIRA issue tracker for this. > > The more information about the bug, the faster it is likely to be > resolved. (Adding a patch or a pull request with unit tests is ideal.) > > Remko > > (Shameless plug) Every java main() method deserves http://picocli.info > > > On May 30, 2018, at 8:36, Husby, Joseph P. <joseph.p.hu...@leidos.com> > wrote: > > > > Hello log4j group, > > > > I think we've found a bug... When using JsonLayout for our appender in > 2.11.0, an object that has "{}" in its toString will result in a recursive > output. Here is a simple code example and resulting output to illustrate > the problem: > > > > import org.apache.logging.log4j.LogManager; > > import org.apache.logging.log4j.Logger; > > > > public class Test { > > > > public static final Logger log = LogManager.getLogger(Test.class); > > > > public static void main(final String[] args) { > > log.info("Testing: {}", new TestObj()); > > } > > > > static class TestObj { > > @Override > > public String toString() { > > return "This is my toString {} with curly braces"; > > } > > } > > } > > > > This produces the following output: > > > > [ > > { > > "thread" : "main", > > "level" : "INFO", > > "loggerName" : "Test", > > "message" : "Testing: This is my toString This is my toString {} > with curly braces with curly braces", > > "endOfBatch" : false, > > "loggerFqcn" : "org.apache.logging.log4j.spi.AbstractLogger", > > "instant" : { > > "epochSecond" : 1527636365, > > "nanoOfSecond" : 40000000 > > }, > > "contextMap" : { }, > > "threadId" : 1, > > "threadPriority" : 5 > > } > > ] > > > > Note how TestObj's toString is inserted in place of its "{}", resulting > in it (sort-of) being logged twice. Is this a known issue? > > > > Thanks! > > Joseph Husby > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org > For additional commands, e-mail: log4j-user-h...@logging.apache.org > >