ERLEDIGT
NEIN
NEIN
ANTWORTEN
4
4
ZUGRIFFE
244
244
EMPFEHLEN
-
Hi,
ich habe ein Problem mit log4j. Und zwar schreiben 2 Logger mit jeweils unterschiedlichen FileAppender dem anderen Logger in sein File.
Hier mal der Testcode dazu wo man das Problem sehr schön sehen kann:
Einfach mal die log files anschauen die dabei herauskommen dann erkennt man schnell das Problem.PHP-Code:
public class ThreadTestlog4j extends Thread
{
private final long ID = CommonHelpers.getNextUniqueNumber(); // Unique Number
// to get a unique Logger for every Class Intance
private final Logger logger = Logger.getLogger(this.getClass() + "." + ID);
private final String name;
private final FileAppender appender = new FileAppender();
public ThreadTestlog4j(String name) throws IOException
{
this.name = name;
addApps();
}
public void run()
{
for (int i = 0; i <= 20; i++)
{
try
{
sleep(1000);
}
catch (InterruptedException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
logger.error(name);
}
}
private void addApps() throws IOException
{
appender.setFile("C:\\logs\\" + name + ".log");
appender.setAppend(false);
// set your own Layout
appender.setLayout(Utils.PATTERN_LAYOUT);
appender.setName(name);
logger.setAdditivity(false);
appender.activateOptions();
logger.addAppender(appender);
}
public static void main(String... args) throws IOException
{
ThreadTestlog4j a = new ThreadTestlog4j("aa");
ThreadTestlog4j b = new ThreadTestlog4j("bb");
a.start();
b.start();
}
}
Danke schon mal im Vorraus
-
habe zwar auch keine Ahnung warum, aber ich hatte so ein Phänomen mal als ich mit den Propertieskonfigurationsmöglichkeiten ein ähnliches Szenario hatte. Ich wechselte auf XML-Konfiguration und dann klappte es.
Außerdem ist das Thema auch für mich sehr interessant, und wie ich einzelne Themen abonieren kann ohne zu antworten, habe ich leider immer noch nicht hier im Forum herausgefunden.
halt mich auf dem Laufenden
Takidoso
-
18.12.08 12:26 #3
Hallo Takidoso,
oben in der blauen Leiste über "Themen-Optionen" (ich meine, der dritte Eintrag) !
gruß
KlausEs ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!
Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
-------------------------------------------------------------------------------------------------
Ich beantworte keine Fragen per PN !!
Stellt Eure Fragen im Forum - dann haben alle etwas davon !!
-
nach längerem hin und her habe ich erst einmal die java logging api ausprobiert. Es meister das Problem ist aber von den Möglichkeinten einfach zu simpel und erfordet zu viel eigene Implementierungen für meinen Geschmack.
deshalb habe ich es verworfen java logging zu verwenden. Dann habe ich noch
logback ausprobiert, den "Nachfolger" von log4j von dessen Erfinder Ceki Gülcü.
Irgendwie finde ich es nicht so intuitiv wie log4j, meister aber die Aufgabe ebenfalls.
Beim Debuggen habe ich herrausgefunden das logback im Gegensatz zu log4j u. a. locks bei iterieren der Appender setzt.
Das allein kann aber nicht der Grund sein da ich auch nachdem ich diese Locks in log4j implementiert hatte das selbe seltsame Ergebnis zustande kommt.
Soweit der Stand. Da ich langsam etwas in Zeitdruck komme werde ich wahrscheinlich auf logback umsteigen, aber falls sich noch neue Erkenntnisse ergeben werde ich es hier posten.
Falls jemand etwas herrausfindet wäre es nett es hier zu posten.
so long
-
Ähnliche Themen
-
Problem mit Log4J
Von ManuelHegemann im Forum Java GrundlagenAntworten: 2Letzter Beitrag: 01.09.10, 10:23 -
Log4j: Pfad zur log4j.xml explizit angeben - DOMConfigurator.configure()
Von Kryptaesthesie im Forum JavaAntworten: 8Letzter Beitrag: 13.02.09, 08:26 -
Frage/Problem bei Log4J
Von Chris2610 im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 15Letzter Beitrag: 17.09.08, 20:20 -
Problem mit log4j
Von kaMii im Forum JavaAntworten: 0Letzter Beitrag: 21.09.07, 11:09 -
Threading.Sleep Problem
Von hofchr im Forum .NET ArchivAntworten: 2Letzter Beitrag: 07.10.04, 14:11





Zitieren

Login





