usuario3433510
En términos simples, ¿cuál es el resultado de hacer additivity="true"
o additivity="false"
al agregar una configuración de Log4j para una clase específica como esta?
<Logger name="com.mypage.glass.TryWindow" level="INFO" additivity="true">
<AppenderRef ref="console"/>
<AppenderRef ref="file"/>
</Logger>
De forma predeterminada, un registrador hereda los appenders de sus ancestros. Configurando additivity="false"
previene este comportamiento.
En su ejemplo, puede haber appenders asociados con com.mypage.glass
o com.mypage
o incluso el registrador raíz que se heredaría si no configura esa propiedad en false
.
-
Pero, ¿qué sucede en el archivo real… es decir, si lo hago verdadero o falso, qué sucederá en el registro generado en el archivo o la consola?
– usuario3433510
27 de marzo de 2014 a las 15:44
-
@user3433510 Supongamos que su registrador raíz tiene un ConsoleAppender configurado, de modo que todos los mensajes INFO se impriman en la consola. Si usted tiene
additivity="true"
(el valor predeterminado), sucom.mypage.glass.TryWindow
logger también se enviará a la consola. Si desea evitar esto, puede configuraradditivity="false"
. Si alguno de estos términos es confuso, le sugiero que lea el breve introducción a log4j.–Duncan Jones
27/03/2014 a las 15:50
-
Agregar una propiedad “inheritAppenders” habría sido muy simple… ¡THX!
– horizonte de eventos
1 de diciembre de 2021 a las 9:39