[ https://issues.apache.org/jira/browse/LOG4J2-3393?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17509729#comment-17509729 ]
ASF subversion and git services commented on LOG4J2-3393: --------------------------------------------------------- Commit 2ce13466115a0a5b4a466a814e36a3df2322ba09 in logging-log4j2's branch refs/heads/release-2.x from Volkan Yazıcı [ https://gitbox.apache.org/repos/asf?p=logging-log4j2.git;h=2ce1346 ] LOG4J2-3393 Improve JsonTemplateLayout performance. (#797) * Replace hardcoded `8 * 1024` private value used for `byteBufferSize` in `StringBuilderEncoder()` ctor with `Constants.ENCODER_BYTE_BUFFER_SIZE`. * Replace `StringBuilderEncoder` (uses an internal thread-local) and `LockingStringBuilderEncoder` (uses locks) with custom `JsonTemplateLayout.StringBuilderEncoder` class implementing `Encoder<StringBuilder>` interface. This was made possible by making `TextEncoderHelper.encodeText()` public. This makes use of JTL recyclers and provides better allocation performance. For instance, if JTL is configured with thread-local recycler, each encoding request will trigger a single TLA, whereas previously it needed to do two: one for `JsonTemplateLayout.Context` and `StringBuilderEncoder`. * Add `CharSequence` specialization in `MessageResolver`. * Improve troubleshooting experience by replacing lambdas with classes in `TemplateResolvers`. * Improve locality and branching in `TemplateResolvers`. * Improve JMH tests. * Thanks so much to Carter Kozak for being the awesome sparring partner. > JSON template layout performance regression > ------------------------------------------- > > Key: LOG4J2-3393 > URL: https://issues.apache.org/jira/browse/LOG4J2-3393 > Project: Log4j 2 > Issue Type: Improvement > Components: JsonTemplateLayout > Affects Versions: 2.17.1 > Reporter: Volkan Yazici > Assignee: Volkan Yazici > Priority: Major > > JTL performance is used to be on par with \{{log4j2-ecs-layout}}, though this > is not the case anymore, there is a slight degradation. This story aims to > investigate what is going on and fix it. -- This message was sent by Atlassian Jira (v8.20.1#820001)