Estamos analisando nosso aplicativo da web JEE para alguma refatoração planejada e uma das sugestões é substituir log4j
por logback
ouslf4j
A equipe não tem certeza se devemos fazer isso - porque atualmente queremos seguir se não estiver quebrado, não conserte nesta área.
Edit: Eu não estou pedindo uma comparação das estruturas de log, mas se é um elemento de refatoração valioso para alterar a estrutura quando estivermos muito felizes com o log4j
fonte
Se o Log4J funcionar para você, não há razão para mudar isso. Caso contrário, procure uma alternativa que faça o que você precisa, que pode ou não ser slf4j.
Só porque alguém diz que algo é melhor do que qualquer outra coisa nunca deve ser uma razão para alterar toda a sua aplicação (ou adotar algo novo).
fonte
Slf4j é uma API que permite escolher se deseja usar log4j, logback ou o log jdk padrão no momento da implantação, em vez de decidir no momento da compilação (que é o que acontece quando você codifica diretamente no log4j)
O Slf4j também fornece a construção {} que pode atrasar chamadas caras para toString (), evitando-as inteiramente se a instrução de log não estiver ativada.
Você pode escolher o mecanismo posteriormente.
fonte