[lttng-dev] [PATCH lttng-tools] fix: systematically set the logger level to prevent unexpected level inheritance
Mathieu Desnoyers
mathieu.desnoyers at efficios.com
Fri May 27 18:02:30 UTC 2016
----- On May 26, 2016, at 6:14 PM, Jonathan Rajotte jonathan.rajotte-julien at efficios.com wrote:
> BSF or other jars can ship with log4j.properties file embedded. This causes
> problem when launching an application with a general class path (e.g
> /usr/share/java/*) since log4j will look for a configuration file in all loaded
> jars. If any contains directive for the root logger it will affect any logger
> with no level who are directly under the root logger. This could result in an
> unexpected behaviour (e.g no events triggered et.).
>
Perhaps prefix the line below with "Link: "
> https://issues.apache.org/jira/browse/BSF-24
missing newline.
> Signed-off-by: Jonathan Rajotte <jonathan.rajotte-julien at efficios.com>
> ---
> tests/regression/ust/java-log4j/JTestLTTng.java | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/tests/regression/ust/java-log4j/JTestLTTng.java
> b/tests/regression/ust/java-log4j/JTestLTTng.java
> index 64a471b..ef97b34 100644
> --- a/tests/regression/ust/java-log4j/JTestLTTng.java
> +++ b/tests/regression/ust/java-log4j/JTestLTTng.java
> @@ -23,6 +23,7 @@ import java.lang.Integer;
> import org.apache.log4j.Appender;
> import org.apache.log4j.BasicConfigurator;
> import org.apache.log4j.Logger;
> +import org.apache.log4j.Level;
> import org.lttng.ust.agent.log4j.LttngLogAppender;
>
> public class JTestLTTng {
> @@ -40,6 +41,17 @@ public class JTestLTTng {
> Logger lttng = Logger.getLogger("log4j-event");
> Logger lttng2 = Logger.getLogger("log4j-event-2");
>
Comments start with:
/*
*
Other than those nits, lgtm.
Thanks,
Mathieu
> + /* Set lowest level to make sure all event levels are logged.
> + * Any jar can override the default log4j rootLogger level
> + * and a logger with no explicit level defaults to the non-null
> + * parent level. Events could be ignored if the inherited value
> + * is to low.
> + * e.g BSF -> https://issues.apache.org/jira/browse/BSF-24
> + */
> +
> + lttng.setLevel(Level.ALL);
> + lttng2.setLevel(Level.ALL);
> +
> int nrIter = Integer.parseInt(args[0]);
> int waitTime = Integer.parseInt(args[1]);
> int fire_debug_tp = 0;
> --
> 2.7.4
>
> _______________________________________________
> lttng-dev mailing list
> lttng-dev at lists.lttng.org
> https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
More information about the lttng-dev
mailing list