para - crear annotations en java
¿Qué son los marcadores en los frameworks de registro de Java y cuál es el motivo para usarlos? (1)
Esta es una versión actualizada de mi respuesta a la pregunta " Mejores prácticas para usar marcadores en SLF4J / Logback ".
Los marcadores se pueden usar para colorear o marcar una sola declaración de registro. Lo que hagas con estos colores, es decir, marcadores, depende totalmente de ti. Sin embargo, dos patrones parecen ser comunes (el primero más común que el segundo) para el uso del marcador.
Disparando : Algún appender podría ser instruido para realizar una acción en presencia de un marcador determinado. Por ejemplo,
SMTPAppender
se puede configurar para enviar un correo electrónico siempre que un evento de registro esté marcado con el marcadorNOTIFY_ADMIN
independientemente del nivel de registro. Consulte la http://logback.qos.ch/manual/appenders.html#OnMarkerEvaluator en http://logback.qos.ch/manual/appenders.html#OnMarkerEvaluator en la documentación de inicio de sesión. También puede combinar niveles de registro y marcadores para desencadenar.Filtrado : podría, por ejemplo, colorear / marcar todos los registros relacionados con la persistencia (en varios y varios archivos de clase) con el color "DB". A continuación, puede filtrar para "DB": deshabilitar el registro a excepción de las declaraciones de registro marcadas con DB. Consulte el http://logback.qos.ch/manual/filters.html en la documentación de inicio de sesión para obtener más información (busque MarkerFilter).
Antes de la aparición de los marcadores, para lograr un comportamiento similar, tenía la opción 1) usar niveles personalizados 2) usar nombres de registradores modificados. SLF4J API actualmente no es compatible con niveles personalizados. En cuanto a la opción 2, los nombres de registrador de sufijo (o prefijo) son viables si es necesario modificar uno o dos registradores. El enfoque deja de ser práctico ya que en poco tiempo se deben "subclasificar" 3 o más registradores porque los archivos de configuración asociados se vuelven inmanejables.
La primera vez que oigo sobre los marcadores cuando se leen:
Compruebo los métodos disponibles para el 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
y encontrado interfaces:
- 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
Más información en profundidad que obtengo de:
pero todavía confundido ... Tenga en cuenta que pregunto por qué , no cómo usarlos, por lo que este no es un duplicado de:
ACTUALIZACIÓN Parece que cuando se utilizan marcadores también se requiere escribir código Java personalizado en lugar de configuración en archivos XML o .property ...
ACTUALIZACIÓN 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"));