Festlegen des Protokolllevels für die innere Klasse (in Glassfish)

8

Ich suche nach einer Möglichkeit, die Log-Ebene für eine innere Klasse zu setzen, sagen wir, ich habe die folgende Klasse:

%Vor%

Ich kann die Log-Ebene von Outer mit dem Namen mypackage.Outer festlegen. Aber wie stelle ich es für Inner ein? Ich habe Folgendes ohne Erfolg getestet:

  • mypackage.Outer
  • mypackage.Outer.Inner
  • mypackage.Outer$Inner (gibt einen Fehler)
  • mypackage.Inner

Weiß jemand, ob es einen Weg gibt, dies zu tun?

Danke!

    
Petter 10.08.2012, 08:38
quelle

1 Antwort

4

Inner.class.getName() gibt mypackage.Outer$Inner zurück, was nicht der erwarteten Konvention für Logger.getLogger () Parameter

  

name - Ein Name für den Logger. Dies sollte ein durch Punkte getrennter Name sein und sollte normalerweise auf dem Paketnamen oder Klassennamen des Subsystems wie java.net oder javax.swing

basieren

Sie können explizit

verwenden %Vor%

und legen Sie die Ebene mit myPackage.Outer.Inner

fest

Seltsamerweise wird die Nachricht von SimpleFormatter() formatiert, wobei $ für die innere Klasse verwendet wird, da sie den Klassennamen ausgibt, nicht den Loggernamen

%Vor%     
fglez 28.02.2013, 18:06
quelle

Tags und Links