Filtrare i messaggi log4j da framework di terze parti?

2022-07-29 13:00:30

Come faccio a filtrare i messaggi di registro da framework di terze parti esterni? Sto usando il framework Hibernate e Spring e vorrei sopprimere i log in modo che vengano visualizzati solo i miei log log4j.

- walters

Source
Risposta


31
  • Nel mio file log4j.properties ho impostato il livello di registrazione del logger radice su ERROR. Quindi, per i pacchetti che voglio registrare in modo specifico, come il codice dell'applicazione, ho impostato il livello di registrazione su INFO o DEBUG.

    log4j.rootLogger=ERROR, stdout
    log4j.logger.com.initech.tps=DEBUG
    log4j.logger.org.hibernate.SQL=INFO
    

    Vedo colleghi che impostano la registrazione root a un livello basso e poi finiscono per elencare tutto ciò che non vogliono vedere, a me sembra semplicemente arretrato. Preferirei elencare ciò che voglio registrare piuttosto che tutte le cose che non voglio registrare.

    A proposito, disattivare completamente la disconnessione per un componente di terze parti mi sembra una cattiva idea. Ad esempio, Spring è relativamente rumoroso e usa WARN per cose di cui non ho bisogno di sapere, ma se registra una voce ERROR per qualcosa che voglio vederlo.