This is an automated email from the ASF dual-hosted git repository. vy pushed a commit to branch LOG4J2-3556 in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git
commit a0c24a5a398d21e274531cdb8a6eac21b389d669 Author: Volkan Yazıcı <[email protected]> AuthorDate: Wed Aug 17 11:26:16 2022 +0200 LOG4J2-3556 Fix stack trace truncation matcher regex. --- .../layout/template/json/resolver/StackTraceStringResolver.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/StackTraceStringResolver.java b/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/StackTraceStringResolver.java index 4e72d1a718..92c2d33252 100644 --- a/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/StackTraceStringResolver.java +++ b/log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/StackTraceStringResolver.java @@ -74,8 +74,10 @@ final class StackTraceStringResolver implements StackTraceResolver { return regexes .stream() .map(regex -> Pattern.compile( - "^.*(" + regex + ")(.*)$", - Pattern.MULTILINE | Pattern.DOTALL)) + ".*?" + // Make `.*` lazy with `?` suffix, since we want to find the _first_ match of `regex`. + regex + // Match the user input. + "(.*)", // Group that is to be truncated. + Pattern.DOTALL)) .collect(Collectors.toList()); }
