É possível que o log4j2 imprima o carimbo de data/hora fornecido pelo usuário em vez da hora do sistema?

StackOverflow https://stackoverflow.com//questions/24025398

  •  21-12-2019
  •  | 
  •  

Pergunta

Eu escrevo um aplicativo que usa dados gravados com carimbos de data/hora.Para isso tenho um objeto responsável por saber a hora atual (que está no passado, mas ainda monotônica).

Desejo configurar o log4j2, de forma que o carimbo de data/hora impresso seja retirado deste objeto e não do cronômetro do computador.É possível?

Obrigado.

Foi útil?

Solução

Sim, isso é possível.Você pode especificar a propriedade do sistema "log4j.Clock" com o nome de classe completo de uma classe que implementa o org.apache.logging.log4j.core.helpers.Clock interface.

Veja a documentação aqui: http://logging.apache.org/log4j/2.x/manual/async.html#AllAsync

A partir da versão RC1, isso funciona apenas para Async Loggers, mas na próxima versão funcionará para todas as configurações.Observe que na próxima versão o pacote core.helpers foi movido para core.util.

Veja também https://issues.apache.org/jira/browse/LOG4J2-628 para detalhes.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top