Ao usar o Spring Framework, podemos configurar facilmente o log4j para gerenciamento de logs.
A primavera 5.0 foi lançada por um tempo e recentemente atualizou o projeto da primavera 4.3 para a primavera 5.0. A classe org.springframework.web.util.log4jconfiglistener usada pela primavera 4.3 integra o log4j foi excluída na versão da primavera 5.0 e a versão LOG4J 1.x não é mais atualizada. Atualizamos log4j-1.x para log4j-2.x
Primeiro, apresente os três pacotes JAR de Log4J 2
Adicione o arquivo web.xml no projeto. Essa configuração permite que o arquivo de log seja emitido para o diretório da web usando $ {web: rootdir}
<Context-Param> <amam-name> log4jContextName </param-name> <amam-value> myApplication </param-value> </context-param>
O Log4J 2 suporta quatro métodos de configuração: JSON, YAML, Propriedades e XML. Utilizamos propriedades para configurar o log4j2 de acordo com as regras antigas.
Adicione o arquivo log4j2.properties no diretório SRC do projeto. A primavera 5.0 carregará automaticamente o arquivo por padrão
# Defina o nível de log dentro do log4j2, valores válidos: rastreamento, depuração, informações, aviso, erro, fatal. Somente válido para eventos no próprio log4j, ele não pode ser definido. Quando definido como rastrear, você verá vários status de saída detalhados dentro do log4j2 status = Fatal# Configuração Nome = PropertiesConfigAppenders = Console, I# Tipo de console Log Output Source Appender.Console.Type = Console# Saída Nome da fonte Appender.Console.Name = Consolelog# Output Typet Appender.ConsolEl.Lay.Layout.ConsoleT.Console.Name = Consolelog# Output Typet Appender.Console Appender.console.layout.pattern = %m %nappenden.console.target = System_out# Log Output Source Appender.i.type = rollingfile# O nome da fonte de saída de scrolling atual pode ser chamado no nome do logger de logger. $ {web: rootdir} /web-inf/log/info.log# O formato do nome do arquivo do arquivo de log arquivado, onde `%d {yyyy-mm-dd-hh}` é usado para preencher automaticamente a data de log. Rolagem de saída de saída do registro Tipo de layout do Appender.i.layout.type = PatternLayout# Modelo de saída de gravação de rolagem appender.i.layout.pattern = %-d {yyyy-mm-dd hh: mm: ss} [ %p] [ %c] %m %n# Especifica a política de armazenamento para arquivos de gravação. Essa estratégia completa principalmente o trabalho periódico de armazenamento de logs appender.i.policies.type = políticas# Corte os logs com base no tempo appender.i.policies.time.type = timebasedizendingPolicy# O intervalo de corte é de 1 mês, ou seja, os arquivos de logs são realizados uma vez por dia. Se a regra de renomeação de arquivos configurada no FilePattern for $ {web: rootdir}/web-inf/log/info_%d {yyyy-mm-dd hh-mm}-%i, a granularidade mínima de tempo é mm, ou seja, o tamanho especificado por um número de fértero de tempo. Se alterado para %d {yyyy-mm-dd hh}, a granularidade mínima é de horas, um arquivo é gerado a cada 2 horas. Appender.i.policies.time.interval = 1# Corrija o intervalo de tempo, a contagem começa em 0. Se modular = true, o tempo de vedação será compensado calculado com 0 pontos como o limite. Por exemplo, modulate = true, intervalo = 4 horas e, em seguida, assumindo que a última vez que o log foi bloqueado foi 03:00, na próxima vez que o log foi bloqueado foi 04:00, e o tempo subsequente Appender.i.Policies.Policulate.Modulate = True# TriGer Policy baseado no volume do arquivo Appender.i.policie.s.s.size =# TRUSTIMENTO Baseado no volume do arquivo de logo Maior que o valor especificado pelo tamanho, gatilho rollingappender.i.policies.size.size = 50m# Substituir Política para armazenamento de arquivos (rolloverStrategy) Appender.i.strategy.type = DeFaulTrolloverStrategy# Número de arquivos Divided (Sealed) são gerados Appender.i. de Strategy.Max = 100# ROOT LOG LOG, LOG. <warn <error <fatal <offrootlogger.level = debugRootlogger.appenderref.i.ref = InforollingFileRootlogger.appenderRef.i.LEvel = Info# Associar Fonte de saída com nome consolelog Note Consolelog ConstrucyGer.ApPenderRef.ConsolOlogrof.ref rootlogger.appendref.consolelog.level = DebugApós a conclusão da configuração, escreva um teste de classe
importar org.apache.logging.log4j.logmanager; import org.apache.logging.log4j.logger; public class Testclass {public static final logger = logManager.getLogger (testclass.class); public void test () {Logger.info ("Information ..."); }}O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.