You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by Remko Popma <re...@gmail.com> on 2016/11/27 08:25:27 UTC

VariablesNotEmptyReplacementConverter

Currently, VariablesNotEmptyReplacementConverter will remove the text
produced by the nested converters if none of the nested converters is a
variable.

Is this the intention?


(It will also remove the nexted text if any of the converters was a
variable that produced non-empty text, this is as expected.)

Re: VariablesNotEmptyReplacementConverter

Posted by Remko Popma <re...@gmail.com>.
We're using it at work also.

On Sun, Nov 27, 2016 at 6:55 PM, Gary Gregory <ga...@gmail.com>
wrote:

> Yeah, this is kind of an inside-out cosmetic-only feature. We did not like
> seeing "[]" in log files when events had no markers. So the feature
> addresses this use case for me and my colleagues at work.
>
> Gary
>
> On Sun, Nov 27, 2016 at 1:53 AM, Remko Popma <re...@gmail.com>
> wrote:
>
>> To be honest, when I found it worked this way I was a bit surprised and
>> thought it was an oversight rather than intentional.
>> I don't have a strong opinion on how it should work, just wanted to
>> clarify.
>>
>>
>> On Sun, Nov 27, 2016 at 5:37 PM, Gary Gregory <ga...@gmail.com>
>> wrote:
>>
>>> I can see that it makes sense since no variables feels like the same as
>>> all variables are empty. The goal is to print out the result of evaluating
>>> the pattern if and only if all variables in the pattern are not empty. The
>>> simplest use case is to print [ ]'s around marker names but print nothing
>>> if there are no markers. There is no point in using %notEmpty if there is
>>> no variables inside of a %notEmpty. So this edge case makes sense as it is
>>> (to me). Do you see it otherwise?
>>>
>>> Gary
>>>
>>> On Sun, Nov 27, 2016 at 12:25 AM, Remko Popma <re...@gmail.com>
>>> wrote:
>>>
>>>> Currently, VariablesNotEmptyReplacementConverter will remove the text
>>>> produced by the nested converters if none of the nested converters is a
>>>> variable.
>>>>
>>>> Is this the intention?
>>>>
>>>>
>>>> (It will also remove the nexted text if any of the converters was a
>>>> variable that produced non-empty text, this is as expected.)
>>>>
>>>
>>>
>>>
>>> --
>>> E-Mail: garydgregory@gmail.com | ggregory@apache.org
>>> Java Persistence with Hibernate, Second Edition
>>> <https://www.amazon.com/gp/product/1617290459/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1617290459&linkCode=as2&tag=garygregory-20&linkId=cadb800f39946ec62ea2b1af9fe6a2b8>
>>>
>>> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1617290459>
>>> JUnit in Action, Second Edition
>>> <https://www.amazon.com/gp/product/1935182021/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182021&linkCode=as2&tag=garygregory-20&linkId=31ecd1f6b6d1eaf8886ac902a24de418%22>
>>>
>>> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182021>
>>> Spring Batch in Action
>>> <https://www.amazon.com/gp/product/1935182951/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182951&linkCode=%7B%7BlinkCode%7D%7D&tag=garygregory-20&linkId=%7B%7Blink_id%7D%7D%22%3ESpring+Batch+in+Action>
>>> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182951>
>>> Blog: http://garygregory.wordpress.com
>>> Home: http://garygregory.com/
>>> Tweet! http://twitter.com/GaryGregory
>>>
>>
>>
>
>
> --
> E-Mail: garydgregory@gmail.com | ggregory@apache.org
> Java Persistence with Hibernate, Second Edition
> <https://www.amazon.com/gp/product/1617290459/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1617290459&linkCode=as2&tag=garygregory-20&linkId=cadb800f39946ec62ea2b1af9fe6a2b8>
>
> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1617290459>
> JUnit in Action, Second Edition
> <https://www.amazon.com/gp/product/1935182021/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182021&linkCode=as2&tag=garygregory-20&linkId=31ecd1f6b6d1eaf8886ac902a24de418%22>
>
> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182021>
> Spring Batch in Action
> <https://www.amazon.com/gp/product/1935182951/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182951&linkCode=%7B%7BlinkCode%7D%7D&tag=garygregory-20&linkId=%7B%7Blink_id%7D%7D%22%3ESpring+Batch+in+Action>
> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182951>
> Blog: http://garygregory.wordpress.com
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory
>

Re: VariablesNotEmptyReplacementConverter

Posted by Gary Gregory <ga...@gmail.com>.
Yeah, this is kind of an inside-out cosmetic-only feature. We did not like
seeing "[]" in log files when events had no markers. So the feature
addresses this use case for me and my colleagues at work.

Gary

On Sun, Nov 27, 2016 at 1:53 AM, Remko Popma <re...@gmail.com> wrote:

> To be honest, when I found it worked this way I was a bit surprised and
> thought it was an oversight rather than intentional.
> I don't have a strong opinion on how it should work, just wanted to
> clarify.
>
>
> On Sun, Nov 27, 2016 at 5:37 PM, Gary Gregory <ga...@gmail.com>
> wrote:
>
>> I can see that it makes sense since no variables feels like the same as
>> all variables are empty. The goal is to print out the result of evaluating
>> the pattern if and only if all variables in the pattern are not empty. The
>> simplest use case is to print [ ]'s around marker names but print nothing
>> if there are no markers. There is no point in using %notEmpty if there is
>> no variables inside of a %notEmpty. So this edge case makes sense as it is
>> (to me). Do you see it otherwise?
>>
>> Gary
>>
>> On Sun, Nov 27, 2016 at 12:25 AM, Remko Popma <re...@gmail.com>
>> wrote:
>>
>>> Currently, VariablesNotEmptyReplacementConverter will remove the text
>>> produced by the nested converters if none of the nested converters is a
>>> variable.
>>>
>>> Is this the intention?
>>>
>>>
>>> (It will also remove the nexted text if any of the converters was a
>>> variable that produced non-empty text, this is as expected.)
>>>
>>
>>
>>
>> --
>> E-Mail: garydgregory@gmail.com | ggregory@apache.org
>> Java Persistence with Hibernate, Second Edition
>> <https://www.amazon.com/gp/product/1617290459/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1617290459&linkCode=as2&tag=garygregory-20&linkId=cadb800f39946ec62ea2b1af9fe6a2b8>
>>
>> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1617290459>
>> JUnit in Action, Second Edition
>> <https://www.amazon.com/gp/product/1935182021/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182021&linkCode=as2&tag=garygregory-20&linkId=31ecd1f6b6d1eaf8886ac902a24de418%22>
>>
>> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182021>
>> Spring Batch in Action
>> <https://www.amazon.com/gp/product/1935182951/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182951&linkCode=%7B%7BlinkCode%7D%7D&tag=garygregory-20&linkId=%7B%7Blink_id%7D%7D%22%3ESpring+Batch+in+Action>
>> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182951>
>> Blog: http://garygregory.wordpress.com
>> Home: http://garygregory.com/
>> Tweet! http://twitter.com/GaryGregory
>>
>
>


-- 
E-Mail: garydgregory@gmail.com | ggregory@apache.org
Java Persistence with Hibernate, Second Edition
<https://www.amazon.com/gp/product/1617290459/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1617290459&linkCode=as2&tag=garygregory-20&linkId=cadb800f39946ec62ea2b1af9fe6a2b8>

<http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1617290459>
JUnit in Action, Second Edition
<https://www.amazon.com/gp/product/1935182021/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182021&linkCode=as2&tag=garygregory-20&linkId=31ecd1f6b6d1eaf8886ac902a24de418%22>

<http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182021>
Spring Batch in Action
<https://www.amazon.com/gp/product/1935182951/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182951&linkCode=%7B%7BlinkCode%7D%7D&tag=garygregory-20&linkId=%7B%7Blink_id%7D%7D%22%3ESpring+Batch+in+Action>
<http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182951>
Blog: http://garygregory.wordpress.com
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory

Re: VariablesNotEmptyReplacementConverter

Posted by Remko Popma <re...@gmail.com>.
To be honest, when I found it worked this way I was a bit surprised and
thought it was an oversight rather than intentional.
I don't have a strong opinion on how it should work, just wanted to clarify.


On Sun, Nov 27, 2016 at 5:37 PM, Gary Gregory <ga...@gmail.com>
wrote:

> I can see that it makes sense since no variables feels like the same as
> all variables are empty. The goal is to print out the result of evaluating
> the pattern if and only if all variables in the pattern are not empty. The
> simplest use case is to print [ ]'s around marker names but print nothing
> if there are no markers. There is no point in using %notEmpty if there is
> no variables inside of a %notEmpty. So this edge case makes sense as it is
> (to me). Do you see it otherwise?
>
> Gary
>
> On Sun, Nov 27, 2016 at 12:25 AM, Remko Popma <re...@gmail.com>
> wrote:
>
>> Currently, VariablesNotEmptyReplacementConverter will remove the text
>> produced by the nested converters if none of the nested converters is a
>> variable.
>>
>> Is this the intention?
>>
>>
>> (It will also remove the nexted text if any of the converters was a
>> variable that produced non-empty text, this is as expected.)
>>
>
>
>
> --
> E-Mail: garydgregory@gmail.com | ggregory@apache.org
> Java Persistence with Hibernate, Second Edition
> <https://www.amazon.com/gp/product/1617290459/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1617290459&linkCode=as2&tag=garygregory-20&linkId=cadb800f39946ec62ea2b1af9fe6a2b8>
>
> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1617290459>
> JUnit in Action, Second Edition
> <https://www.amazon.com/gp/product/1935182021/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182021&linkCode=as2&tag=garygregory-20&linkId=31ecd1f6b6d1eaf8886ac902a24de418%22>
>
> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182021>
> Spring Batch in Action
> <https://www.amazon.com/gp/product/1935182951/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182951&linkCode=%7B%7BlinkCode%7D%7D&tag=garygregory-20&linkId=%7B%7Blink_id%7D%7D%22%3ESpring+Batch+in+Action>
> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182951>
> Blog: http://garygregory.wordpress.com
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory
>

Re: VariablesNotEmptyReplacementConverter

Posted by Gary Gregory <ga...@gmail.com>.
I can see that it makes sense since no variables feels like the same as all
variables are empty. The goal is to print out the result of evaluating the
pattern if and only if all variables in the pattern are not empty. The
simplest use case is to print [ ]'s around marker names but print nothing
if there are no markers. There is no point in using %notEmpty if there is
no variables inside of a %notEmpty. So this edge case makes sense as it is
(to me). Do you see it otherwise?

Gary

On Sun, Nov 27, 2016 at 12:25 AM, Remko Popma <re...@gmail.com> wrote:

> Currently, VariablesNotEmptyReplacementConverter will remove the text
> produced by the nested converters if none of the nested converters is a
> variable.
>
> Is this the intention?
>
>
> (It will also remove the nexted text if any of the converters was a
> variable that produced non-empty text, this is as expected.)
>



-- 
E-Mail: garydgregory@gmail.com | ggregory@apache.org
Java Persistence with Hibernate, Second Edition
<https://www.amazon.com/gp/product/1617290459/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1617290459&linkCode=as2&tag=garygregory-20&linkId=cadb800f39946ec62ea2b1af9fe6a2b8>

<http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1617290459>
JUnit in Action, Second Edition
<https://www.amazon.com/gp/product/1935182021/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182021&linkCode=as2&tag=garygregory-20&linkId=31ecd1f6b6d1eaf8886ac902a24de418%22>

<http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182021>
Spring Batch in Action
<https://www.amazon.com/gp/product/1935182951/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182951&linkCode=%7B%7BlinkCode%7D%7D&tag=garygregory-20&linkId=%7B%7Blink_id%7D%7D%22%3ESpring+Batch+in+Action>
<http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182951>
Blog: http://garygregory.wordpress.com
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory