<div dir="ltr">The intent would be to extend on what you started.  You recognized that constructing a string to be thrown away when it was determined the logging level was insufficient was inefficient, which is totally true, but it fails to take into consideration that just accessing and formatting the data for display can be quite costly as well.  I would propose to extend the already existing replacement parameters, giving them the ability to be positionally referenced, dot notated, and format specified to prevent retrieving and formatting data before it's known that the data is necessary.  I would propose to merge (and extend) my Onyx text formatter to be a perfect superset of the existing MessageFormatter.  This should remove the concern that different libraries would be requiring different formatters since old libraries would continue to use the existing replacement syntax, where as updated libraries/applications could take advantage of the advanced formatters to allow for additional production speed improvements without cluttering up their code with numerous if(log.isDebugEnabled()) { blocks.<div>

<br></div><div>I have a little time right now and would enjoy the challenge, but only if there's a chance that it would be accepted as part of a future SLF4j release.  Thanks.</div><div>  (*Chris*)</div></div><div class="gmail_extra">

<br><br><div class="gmail_quote">On Thu, Dec 26, 2013 at 10:22 AM, Ceki Gülcü <span dir="ltr"><<a href="mailto:ceki@qos.ch" target="_blank">ceki@qos.ch</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

It depends. What do you have in mind?<div class="im"><br>
<br>
On 12/26/2013 5:09 PM, Chris Pratt wrote:<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
Hmmm, interesting point.  Would you be open to the possible extension of<br>
the existing formatter?<br>
   (*Chris*)<br>
<br>
<br>
On Thu, Dec 26, 2013 at 2:19 AM, Ceki Gülcü <<a href="mailto:ceki@qos.ch" target="_blank">ceki@qos.ch</a><br></div><div><div class="h5">
<mailto:<a href="mailto:ceki@qos.ch" target="_blank">ceki@qos.ch</a>>> wrote:<br>
<br>
<br>
    Hi Chris,<br>
<br>
    It is not possible to configure a different  MessageFormatter than<br>
    the default. The current API does not and will not support changing<br>
    the MessageFormatter because allowing for such changes would open<br>
    the door for errors. For example, if your application A depends on<br>
    library L, and F1 and F2 are two formatting conventions, then if A<br>
    uses format F1 and L uses F2, then any choice of formatting<br>
    convention would cause errors either in A or in L.<br>
<br>
    Merry Christmas and happy holidays,<br>
<br>
<br>
    On 12/26/2013 6:52 AM, Chris Pratt wrote:<br>
<br>
        Ceki,<br>
            I thought I had read that with the latest SLF4j it was<br>
        possible to<br>
        configure a different MessageFormatter than the default.  But,<br>
        looking<br>
        at the code, It doesn't appear possible.  What would I need to<br>
        do to get<br>
        a code modification to SLF4j reviewed and possibly approved?  Is<br>
        it as<br>
        simple as providing a GitHub Pull Request to you or is there<br>
        something I<br>
        would need to sign before that would be allowed?  Thanks.<br>
            (*Chris*)<br>
<br>
<br></div></div>
        ______________________________<u></u>___________________<br>
        slf4j-user mailing list<br>
        <a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a> <mailto:<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a>><br>
        <a href="http://mailman.qos.ch/mailman/__listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/mailman/<u></u>__listinfo/slf4j-user</a><br>
        <<a href="http://mailman.qos.ch/mailman/listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/<u></u>mailman/listinfo/slf4j-user</a>><br>
<br>
    ______________________________<u></u>___________________<br>
    slf4j-user mailing list<br>
    <a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a> <mailto:<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a>><br>
    <a href="http://mailman.qos.ch/mailman/__listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/mailman/<u></u>__listinfo/slf4j-user</a><div class="im"><br>
    <<a href="http://mailman.qos.ch/mailman/listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/<u></u>mailman/listinfo/slf4j-user</a>><br>
<br>
<br>
<br>
<br>
______________________________<u></u>_________________<br>
slf4j-user mailing list<br>
<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a><br>
<a href="http://mailman.qos.ch/mailman/listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/mailman/<u></u>listinfo/slf4j-user</a><br>
<br>
</div></blockquote><div class="HOEnZb"><div class="h5">
______________________________<u></u>_________________<br>
slf4j-user mailing list<br>
<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a><br>
<a href="http://mailman.qos.ch/mailman/listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/mailman/<u></u>listinfo/slf4j-user</a><br>
</div></div></blockquote></div><br></div>