Mirror of the lttng-dev mailing list
 help / color / mirror / Atom feed
From: mathieu.desnoyers@efficios.com (Mathieu Desnoyers)
Subject: [lttng-dev] [PATCH lttng-ust] log4j example: systematically set the logger level to prevent unexpected level inheritance
Date: Thu, 26 May 2016 22:14:29 +0000 (UTC)	[thread overview]
Message-ID: <600967239.20730.1464300869013.JavaMail.zimbra@efficios.com> (raw)
In-Reply-To: <1464300312-12473-1-git-send-email-jonathan.rajotte-julien@efficios.com>

Merged into master, 2.8, 2.7, thanks!

Mathieu

----- On May 26, 2016, at 6:05 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 application with a general class path (e.g /usr/share/java/*) since
> log4j will look for a property 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.).
> 
> https://issues.apache.org/jira/browse/BSF-24
> 
> Signed-off-by: Jonathan Rajotte <jonathan.rajotte-julien at efficios.com>
> ---
> doc/examples/java-log4j/Hello.java | 11 +++++++++++
> 1 file changed, 11 insertions(+)
> 
> diff --git a/doc/examples/java-log4j/Hello.java
> b/doc/examples/java-log4j/Hello.java
> index a477e33..496c840 100644
> --- a/doc/examples/java-log4j/Hello.java
> +++ b/doc/examples/java-log4j/Hello.java
> @@ -26,6 +26,7 @@ import java.io.IOException;
> 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;
> 
> /**
> @@ -64,6 +65,16 @@ public class Hello {
> 	 *             command line.
> 	 */
> 	public static void main(String args[]) throws IOException {
> +
> +		/* 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
> +		 */
> +		HELLO_LOG.setLevel(Level.ALL);
> +
> 		/* Start with the default Log4j configuration, which logs to console */
> 		BasicConfigurator.configure();
> 
> --
> 2.7.4

-- 
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com


      reply	other threads:[~2016-05-26 22:14 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-26 22:05 Jonathan Rajotte
2016-05-26 22:14 ` Mathieu Desnoyers [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=600967239.20730.1464300869013.JavaMail.zimbra@efficios.com \
    --to=mathieu.desnoyers@efficios.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox