Como registrar avisos repetidos apenas uma vez
Existe um padrão que acontece de vez em quando. Eu tenho um método chamado várias vezes e contém este trecho:
Foo foo = getConfiguredFoo();
if (foo == null) {
logger.warn("Foo not configured");
foo = getDefaultFoo();
}
Em seguida, meu arquivo de log está cheio de avisos centenas de vezes. Eu sei que possogrep
, mas me pergunto se existe uma maneira melhor de ver esse aviso apenas uma ve
Nota: a duplicação de mensagens é um comportamento correto por padrão, então não se trata de evitar mensagem de log duplicada não intencional. Marquei minha pergunta como log4j, mas estou aberto a outras estruturas de log java.