Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [RISOLTO] Log4J ed il path del file di log

    Salve,

    ho realizzato una semplice applicazione di test per Log4J facendo in modo che il file di log andasse in una cartella apposita creata da Log4J stesso, ovvero log/events.log
    Tutto ok. Il problema è che se metto la stessa identica classe in un altro package non mi è più possibile reindirazzare l'output nella cartella log a meno che non creo preventivamente la cartella log. La cosa più sconvolgente è che io non cambio niente, copio la classe MyLog4J.java ed il file log4j.properties nel nuovo progetto di Eclipse.
    Uso linux, ho controllato anche i permessi, ma sono identici in entrambi i package.

    Ecco la mia classe MyLog4J.java
    Codice PHP:
    import org.apache.log4j.*;

    public class 
    MyLog4J {

        public static 
    void main(String[] args) {
            
    // Carico il file di configurazione
            
    PropertyConfigurator.configure("log4j.properties");
            
            
    // Ottengo l'istanza del log
            
    Logger log Logger.getLogger("MyLog4J.class");
            
            
    log.debug("DEBUG");
                    [...]
        }


    Il file log4j.properties:
    Codice PHP:
    #LOGGER
    log4j.rootCategory=DEBUGAPPENDER_OUTAPPENDER_FILE

    #APPENDER_OUT
    log4j.appender.APPENDER_OUT=org.apache.log4j.ConsoleAppender
    log4j
    .appender.APPENDER_OUT.layout=org.apache.log4j.SimpleLayout

    #APPENDER_FILE
    log4j.appender.APPENDER_FILE=org.apache.log4j.FileAppender
    log4j
    .appender.APPENDER_FILE.File=log/events.log
    log4j
    .appender.APPENDER_FILE.layout=org.apache.log4j.SimpleLayout 
    Grazie dell'attenzione,
    Matteo.
    Gutta cavat lapidem
    [La goccia scava la pietra]
    ***
    (Ovidio)

  2. #2

    [SOLUZIONE]

    Ho risolto l'arcano mistero.
    In pratica nel nuovo progetto di Eclipse facevo riferimento ad una versione vecchia di Log4J.
    La nuova versione non ha di questi problemi, e quindi si può usare anche reindirizzamenti del tipo log/events.log e se la cartella log non esiste Log4J la crea per te
    Quindi un consiglio...aggiornatevi la libreria di Log4J!

    Alla prossima
    Gutta cavat lapidem
    [La goccia scava la pietra]
    ***
    (Ovidio)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.