Primeira vez que ouço falar de marcadores quando leio:
Eu verifico os métodos disponíveis para o objeto Logger :
- http://www.slf4j.org/api/org/slf4j/Logger.html
- http://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/Logger.html
e interfaces encontradas:
- http://www.slf4j.org/api/org/slf4j/Marker.html
- http://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/Marker.html
Mais informações detalhadas eu obtenho em:
mas ainda confuso ... Observe que eu pergunto por que , não como usá-los, então esta não é uma duplicata de:
ATUALIZAÇÃO Parece que quando você usa marcadores, também precisa escrever código Java personalizado em vez de fazer a configuração em arquivos XML ou .property ...
ATUALIZAÇÃO 2 de http://logback.qos.ch/manual/appenders.html#OnMarkerEvaluator
Marker notifyAdmin = MarkerFactory.getMarker("NOTIFY_ADMIN");
logger.error(notifyAdmin,
"This is a serious an error requiring the admin's attention",
new Exception("Just testing"));
grep
logs de texto.Respostas:
Esta é uma versão reformulada da minha resposta à pergunta " Melhores práticas para usar marcadores em SLF4J / Logback ".
Os marcadores podem ser usados para colorir ou marcar uma única instrução de log. O que você faz com essas cores, ou seja, marcadores, depende inteiramente de você. No entanto, dois padrões parecem ser comuns para o uso do marcador.
Disparando : algum appender pode ser instruído a realizar uma ação na presença de um determinado marcador. Por exemplo,
SMTPAppender
pode ser configurado para enviar um e-mail sempre que um evento de registro for marcado com oNOTIFY_ADMIN
marcador, independentemente do nível de registro. Consulte o acionamento baseado em marcador na documentação do logback. Você também pode combinar níveis de registro e marcadores para acionamento.Filtragem : os marcadores são muito úteis para destacar certas declarações de registro valiosas. Por exemplo, você pode colorir / marcar todos os seus logs relacionados à persistência (em vários e vários arquivos de classe) com a cor "DB". Você pode então filtrar por "DB": desabilite o registro, exceto para instruções de log marcadas com DB. Consulte o capítulo sobre filtros na documentação do logback para obter mais informações (procure por MarkerFilter). Observe que a filtragem de marcadores pode ser realizada não apenas por logback, mas também por ferramentas de análise de log.
Antes do advento dos marcadores, para obter um comportamento semelhante, você tinha a opção 1) usar níveis personalizados 2) usar nomes de logger modificados. A API SLF4J atualmente não oferece suporte a níveis personalizados. Quanto à opção 2, sufixar (ou prefixar) nomes de registradores é viável se um ou dois registradores precisarem ser modificados. A abordagem torna-se impraticável assim que 3 ou mais registradores precisam ser "subclassificados" porque os arquivos de configuração associados se tornam impossíveis de gerenciar.
Mesmo que um único marcador já possa ser muito útil, a próxima versão do SLF4J, ou seja, a versão 2.0, permitirá vários marcadores por instrução de log.
fonte