logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Remko Popma (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (LOG4J2-774) NdcPatternConverter brakes Log4j 1.2.x layout
Date Wed, 13 Aug 2014 12:52:11 GMT

    [ https://issues.apache.org/jira/browse/LOG4J2-774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14095429#comment-14095429
] 

Remko Popma commented on LOG4J2-774:
------------------------------------

AFAICS, log4perl is the only logging package that actually documents the %x output format.

However, it seems that both [log4net|http://stackoverflow.com/questions/334367/when-to-use-nested-diagnostic-context-ndc]
and [log4perl|http://log4perl.sourceforge.net/releases/Log-Log4perl/docs/html/Log/Log4perl.html#085cb]
also format the %x pattern as a space-separated list without enclosing brackets.

I kind of like log4perl's example usage:
{code}
    Log::Log4perl::NDC->push("San");
    Log::Log4perl::NDC->push("Francisco");
    $logger->debug("rocks");

//PatternLayout format like ``%x %m%n'' will give output:

    San Francisco rocks
{code}

Given that three other logging packages use the space-separated format I wouldn't mind making
that the default. We can add formatting options to use the comma-separated format enclosed
by brackets.

Gary, what do you think?

> NdcPatternConverter brakes Log4j 1.2.x layout
> ---------------------------------------------
>
>                 Key: LOG4J2-774
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-774
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Layouts
>    Affects Versions: 2.0.1
>            Reporter: Frank WiƟmann
>            Assignee: Remko Popma
>            Priority: Minor
>              Labels: patch
>             Fix For: 2.0.2
>
>         Attachments: NdcPatternConverter.java.patch
>
>
> In Log4j 1.2.17 NdcPatternConverter.format() returns an empty string "" or the stack
messages separated by space "a b c" (NDC.DiagnosticContext.fullMessage).
> The PatternLayout \[%20.20x\] results in 
> {code}[                    ]{code} or {code}[               a b c]{code}.
> In Log4j 2.0.1 NdcPatternConverter.format() returns an unmodified Collection.toString()
representation: "\[\]" for an empty collection or the collection separated by comma "\[a,
b, c\]" (DefaultThreadContextStack.toString() and MutableThreadContextStack.toString()).
> The PatternLayout \[%20.20x\] results in {code}[                  []]{code} or {code}[
          [a, b, c]]{code}.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org


Mime
View raw message