Hi everyone,<div><br></div><div>We are used to log the current user. But the current user is a complex object with a ugly "toString()" who print many unuseful informations with new lines. And, of course, we can't override that.</div>

<div>To have clean logs, we have to walk into the user object structure until relevant informations and deal with many possibles null pointers.</div><div><br></div><div>My question is : Is it a way to register something usable by SLF4J to render an object to a String ?</div>

<div><br></div><div>Something like :</div><div><pre id="sampleLayoutConfig" class="prettyprint source" style="padding:2px;margin-top:0px;margin-bottom:0px;background-color:rgb(245,245,245);font-family:Courier,'MS Courier New',Prestige,monospace;border-top-width:1px;border-top-style:solid;border-top-color:rgb(136,136,136);border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:rgb(136,136,136);line-height:20px;font-size:medium">

<span class="tag" style="color:rgb(0,0,136)"><appender</span><span class="pln"> </span><span class="atn" style="color:rgb(102,0,102)">name</span><span class="pun" style="color:rgb(102,102,0)">=</span><span class="atv" style="color:rgb(0,136,0)">"STDOUT"</span><span class="pln"> </span><span class="atn" style="color:rgb(102,0,102)">class</span><span class="pun" style="color:rgb(102,102,0)">=</span><span class="atv" style="color:rgb(0,136,0)">"ch.qos.logback.core.ConsoleAppender"</span><span class="tag" style="color:rgb(0,0,136)">></span><span class="pln"><br>

    </span><b><span class="tag" style="color:rgb(0,0,136)"><renderer </span><span class="atn" style="color:rgb(102,0,102)">class</span><span class="pun" style="color:rgb(102,102,0)">=</span><span class="atv" style="color:rgb(0,136,0)">"com.our.company.logging.UserContextRenderer" </span></b><b><span class="tag" style="color:rgb(0,0,136)">/></span></b><span class="pln"><br>

</span><span class="tag" style="color:rgb(0,0,136)"></appender></span></pre><div><br></div>
</div>