You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by gg...@apache.org on 2016/07/09 00:08:34 UTC

[1/2] logging-log4j2 git commit: Warn user if you request ANSI rendering and JANSI is not available.

Repository: logging-log4j2
Updated Branches:
  refs/heads/StyledMessage f6ed16cbc -> 5bed20e21


Warn user if you request ANSI rendering and JANSI is not available.

Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/efb5d61b
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/efb5d61b
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/efb5d61b

Branch: refs/heads/StyledMessage
Commit: efb5d61b80e484add666db4f61ec1acb72043bbf
Parents: f6ed16c
Author: ggregory <gg...@apache.org>
Authored: Fri Jul 8 17:06:10 2016 -0700
Committer: ggregory <gg...@apache.org>
Committed: Fri Jul 8 17:06:10 2016 -0700

----------------------------------------------------------------------
 .../logging/log4j/core/pattern/MessagePatternConverter.java | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/efb5d61b/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/MessagePatternConverter.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/MessagePatternConverter.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/MessagePatternConverter.java
index 68fc25c..a5058b0 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/MessagePatternConverter.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/MessagePatternConverter.java
@@ -21,8 +21,10 @@ import java.util.Locale;
 import org.apache.logging.log4j.core.LogEvent;
 import org.apache.logging.log4j.core.config.Configuration;
 import org.apache.logging.log4j.core.config.plugins.Plugin;
+import org.apache.logging.log4j.core.util.Loader;
 import org.apache.logging.log4j.message.Message;
 import org.apache.logging.log4j.message.MultiformatMessage;
+import org.apache.logging.log4j.status.StatusLogger;
 import org.apache.logging.log4j.util.StringBuilderFormattable;
 
 /**
@@ -54,7 +56,12 @@ public final class MessagePatternConverter extends LogEventPatternConverter {
             final String format = formats[0].toUpperCase(Locale.ROOT);
             switch (format) {
             case "ANSI":
-                return new JAnsiMessageRenderer(formats);
+                if (Loader.isClassAvailable("org.fusesource.jansi.AnsiRenderer")) {
+                    return new JAnsiMessageRenderer(formats);
+                }
+                StatusLogger.getLogger()
+                        .warn("You requested ANSI message rendering but JANSI is not on the classpath.");
+                return null;
             case "HTML":
                 return new HtmlMessageRenderer(formats);
             }


[2/2] logging-log4j2 git commit: Docs.

Posted by gg...@apache.org.
Docs.

Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/5bed20e2
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/5bed20e2
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/5bed20e2

Branch: refs/heads/StyledMessage
Commit: 5bed20e216fdc5391dd013ca719854cc194c177a
Parents: efb5d61
Author: ggregory <gg...@apache.org>
Authored: Fri Jul 8 17:06:26 2016 -0700
Committer: ggregory <gg...@apache.org>
Committed: Fri Jul 8 17:06:26 2016 -0700

----------------------------------------------------------------------
 src/site/xdoc/manual/layouts.xml.vm | 39 ++++++++++++++++++++++++++++----
 1 file changed, 35 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/5bed20e2/src/site/xdoc/manual/layouts.xml.vm
----------------------------------------------------------------------
diff --git a/src/site/xdoc/manual/layouts.xml.vm b/src/site/xdoc/manual/layouts.xml.vm
index fda8e6f..f50b0d3 100644
--- a/src/site/xdoc/manual/layouts.xml.vm
+++ b/src/site/xdoc/manual/layouts.xml.vm
@@ -1011,11 +1011,42 @@ WARN  [main]: Message 2</pre>
             <tr>
               <td align="center">
                 <a name="PatternMessage"/>
-                <b>m</b><br />
-                <b>msg</b><br />
-                <b>message</b>
+                <b>m</b>{ansi}<br />
+                <b>msg</b>{ansi}<br />
+                <b>message</b>{ansi}
               </td>
-              <td>Outputs the application supplied message associated with the logging event.
+              <td>
+                <p>
+                  Outputs the application supplied message associated with the logging event.
+                </p>
+                <!-- Copied and tweaked from Javadoc for org.apache.logging.log4j.core.pattern.JAnsiMessageRenderer -->
+                <p>
+                  Add <code>{ansi}</code> to render messages with ANSI escape codes (requires JAnsi.)
+                </p>
+                <p>
+                  The default syntax for embedded ANSI codes is:
+                </p>
+                <pre>&#64;|<em>code</em>(,<em>code</em>)* <em>text</em>|@</pre>
+                <p>
+                  For example, to render the message <code>"Hello"</code> in green, use:
+                </p>
+                <pre>&#64;|green Hello|@</pre>
+                <p>
+                  To render the message <code>"Hello"</code> in bold and red, use:
+                </p>
+                <pre>&#64;|bold,red Warning!|@</pre>
+                <p>
+                  You can also define custom style names in the configuration with the syntax:
+                </p>
+                <pre>%message{ansi}{StyleName=value(,value)*( StyleName=value(,value)*)*}%n</pre>
+                <p>
+                  For example:
+                </p>
+                <pre>%message{ansi}{WarningStyle=red,bold KeyStyle=white ValueStyle=blue}%n</pre>
+                <p>
+                  The call site can look like this:
+                </p>
+                <pre>logger.info("@|KeyStyle {}|@ = @|ValueStyle {}|@", entry.getKey(), entry.getValue());</pre>
               </td>
             </tr>
             <tr>