Unsere Java WebStart-Anwendung enthält keine log4j-Konfigurationsdatei. es stellt einfach einige hartcodierte Logger und Appender auf.log4j-Konfiguration mit Java Web Start
Ich möchte, dass einzelne Clients in der Lage sind, eine log4j.properties-Datei irgendwo zu löschen und ihre eigene benutzerdefinierte Protokollierung bei der Fehlersuche einzurichten. Ich könnte eine log4j.properties-Datei irgendwo in einem der JARs unserer Anwendung bündeln und das würde Konfiguration erlauben, aber dann wäre die Konfiguration für jeden Client gleich, anstatt nur den Client zu beeinflussen, den ich beheben möchte. Außerdem könnte ich die Einstellungen nicht im laufenden Betrieb ändern.
Gibt es eine Möglichkeit, die log4j initialization procedure zu entführen, um eine pro-Client-Konfigurationsdatei zu verwenden?
Ich habe vollen Zugriff auf die Maschine. Ich hoffe, ich muss meinen eigenen Konfigurator nicht schreiben, da ich das gerne auf einigen bereits eingerichteten Rechnern machen würde, ohne neuen Code schreiben und upgraden zu müssen. – skiphoppy
Wenn Sie vollen Zugriff auf die Maschine haben, dann - ungetestet - setzen Sie die Systemeigenschaft log4j.configuration in der jnlp-Datei. Siehe http://logging.apache.org/log4j/1.2/manual.html - Abschnitt "Standard-Initialisierungsverfahren" für Details. –