<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div><div>On 1 Mar 2010, at 18:55, Robert Elliot wrote:</div><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 11px/normal Monaco; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 11px/normal Monaco; "><font class="Apple-style-span" color="#000000" face="Helvetica"><span class="Apple-style-span" style="font-size: medium; "><br></span></font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 11px/normal Monaco; ">However, oddly you can't then ask the root logger what children it has - it's stored as a private variable (List&lt;Logger&gt;&nbsp;childrenList) with no public accessor. &nbsp;I don't know what the reason for this is (I'm also curious why it's a List - it looks like a Set to me, order irrelevant but no duplicates). &nbsp;I see no reason why it shouldn't have a public accessor exposing an unchangeable view of this collection to allow the introspection you ask for - you could then recursively walk the Logger tree. &nbsp;It would be trivial to branch logback in git and implement this.</div></div></div></div></blockquote></div><br><div>I've got my own reasons for wanting this functionality, so I've raised a JIRA here:</div><div><a href="http://jira.qos.ch/browse/LBCLASSIC-190">http://jira.qos.ch/browse/LBCLASSIC-190</a></div><div><br></div><div>and created the logback fork that does the work here:</div><div><a href="http://github.com/Mahoney/logback">http://github.com/Mahoney/logback</a></div><div><br></div><div><blockquote type="cite"><span class="Apple-style-span" style="font-family: Monaco; font-size: 11px; ">Another approach might be to look at the Joran configurator for logback and add a listener to it as each Logback logger is configured that creates the corresponding JULI logger (if that's the right JULI terminology).</span></blockquote><br></div><div>It looks as if you can just add a status listener class of your own writing to your logback.xml:</div><div><br></div><div><span class="Apple-style-span" style="font-family: Courier, 'MS Courier New', Prestige, monospace; white-space: pre; ">&lt;configuration&gt;
  <b>&lt;statusListener class="com.whatever.YourStatusListener" /&gt;</b>  

  ... the rest of the configuration file  
&lt;/configuration&gt;</span></div><div><font class="Apple-style-span" face="Courier, 'MS Courier New', Prestige, monospace"><span class="Apple-style-span" style="white-space: pre; "><br></span></font></div><div>Joran will pass it messages as it configures each Logger - see the source of&nbsp;<span class="Apple-style-span" style="font-family: Monaco; font-size: 11px; ">ch.qos.logback.classic.joran.action.LoggerAction for details.</span></div></div></body></html>