Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Wilkins2015-09-25 02:45:46 +0000
committerGreg Wilkins2015-09-25 02:45:46 +0000
commitdcb4c0d0a8ecb2d198977334b8b6a8c6180359b5 (patch)
treeb0dca840c0b6a9c1809937f678ffa24840b218ca /jetty-util/src/main/java
parent3e242bef1645a84f002b835de174123be2ca564c (diff)
downloadorg.eclipse.jetty.project-dcb4c0d0a8ecb2d198977334b8b6a8c6180359b5.tar.gz
org.eclipse.jetty.project-dcb4c0d0a8ecb2d198977334b8b6a8c6180359b5.tar.xz
org.eclipse.jetty.project-dcb4c0d0a8ecb2d198977334b8b6a8c6180359b5.zip
478372 - JavaUtilLog setSourceClass and setSourceMethod
Diffstat (limited to 'jetty-util/src/main/java')
-rw-r--r--jetty-util/src/main/java/org/eclipse/jetty/util/log/JavaUtilLog.java77
1 files changed, 62 insertions, 15 deletions
diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/log/JavaUtilLog.java b/jetty-util/src/main/java/org/eclipse/jetty/util/log/JavaUtilLog.java
index c079fd4955..53b28165e3 100644
--- a/jetty-util/src/main/java/org/eclipse/jetty/util/log/JavaUtilLog.java
+++ b/jetty-util/src/main/java/org/eclipse/jetty/util/log/JavaUtilLog.java
@@ -19,6 +19,7 @@
package org.eclipse.jetty.util.log;
import java.util.logging.Level;
+import java.util.logging.LogRecord;
/**
* <p>
@@ -26,12 +27,29 @@ import java.util.logging.Level;
* </p>
*
* <p>
- * You can also set the logger level using <a href="http://java.sun.com/j2se/1.5.0/docs/guide/logging/overview.html">
+ * You can also set the logger level using <a href="http://docs.oracle.com/javase/8/docs/api/java/util/logging/package-summary.html">
* standard java.util.logging configuration</a>.
* </p>
+ *
+ * Configuration Properties:
+ * <dl>
+ * <dt>org.eclipse.jetty.util.log.javautil.SOURCE=(true|false)</dt>
+ * <dd>Set the LogRecord source class and method for JavaUtilLog.<br>
+ * Default: true
+ * </dd>
+ * <dt>org.eclipse.jetty.util.log.SOURCE=(true|false)</dt>
+ * <dd>Set the LogRecord source class and method for all Loggers.<br>
+ * Default: depends on Logger class
+ * </dd>
+ * </dl>
*/
public class JavaUtilLog extends AbstractLogger
{
+ private final static String THIS_CLASS= JavaUtilLog.class.getName();
+ private final static boolean __source =
+ Boolean.parseBoolean(Log.__props.getProperty("org.eclipse.jetty.util.log.SOURCE",
+ Log.__props.getProperty("org.eclipse.jetty.util.log.javautil.SOURCE","true")));
+
private Level configuredLevel;
private java.util.logging.Logger _logger;
@@ -47,6 +65,8 @@ public class JavaUtilLog extends AbstractLogger
{
_logger.setLevel(Level.FINE);
}
+
+
configuredLevel = _logger.getLevel();
}
@@ -55,36 +75,63 @@ public class JavaUtilLog extends AbstractLogger
return _logger.getName();
}
+ protected void log(Level level,String msg,Throwable thrown)
+ {
+ LogRecord record = new LogRecord(level,msg);
+ if (thrown!=null)
+ record.setThrown(thrown);
+ record.setLoggerName(_logger.getName());
+ if (__source)
+ {
+ StackTraceElement[] stack = new Throwable().getStackTrace();
+ for (int i=0;i<stack.length;i++)
+ {
+ StackTraceElement e=stack[i];
+ if (!e.getClassName().equals(THIS_CLASS))
+ {
+ record.setSourceClassName(e.getClassName());
+ record.setSourceMethodName(e.getMethodName());
+ break;
+ }
+ }
+ }
+ _logger.log(record);
+ }
+
public void warn(String msg, Object... args)
{
if (_logger.isLoggable(Level.WARNING))
- _logger.log(Level.WARNING,format(msg,args));
+ log(Level.WARNING,format(msg,args),null);
}
public void warn(Throwable thrown)
{
- warn("", thrown);
+ if (_logger.isLoggable(Level.WARNING))
+ log(Level.WARNING,"",thrown);
}
public void warn(String msg, Throwable thrown)
{
- _logger.log(Level.WARNING, msg, thrown);
+ if (_logger.isLoggable(Level.WARNING))
+ log(Level.WARNING,msg,thrown);
}
public void info(String msg, Object... args)
{
if (_logger.isLoggable(Level.INFO))
- _logger.log(Level.INFO, format(msg, args));
+ log(Level.INFO, format(msg, args),null);
}
public void info(Throwable thrown)
{
- info("", thrown);
+ if (_logger.isLoggable(Level.INFO))
+ log(Level.INFO, "",thrown);
}
public void info(String msg, Throwable thrown)
{
- _logger.log(Level.INFO, msg, thrown);
+ if (_logger.isLoggable(Level.INFO))
+ log(Level.INFO,msg,thrown);
}
public boolean isDebugEnabled()
@@ -108,23 +155,25 @@ public class JavaUtilLog extends AbstractLogger
public void debug(String msg, Object... args)
{
if (_logger.isLoggable(Level.FINE))
- _logger.log(Level.FINE,format(msg, args));
+ log(Level.FINE,format(msg, args),null);
}
public void debug(String msg, long arg)
{
if (_logger.isLoggable(Level.FINE))
- _logger.log(Level.FINE,format(msg, arg));
+ log(Level.FINE,format(msg, arg),null);
}
public void debug(Throwable thrown)
{
- debug("", thrown);
+ if (_logger.isLoggable(Level.FINE))
+ log(Level.FINE,"",thrown);
}
public void debug(String msg, Throwable thrown)
{
- _logger.log(Level.FINE, msg, thrown);
+ if (_logger.isLoggable(Level.FINE))
+ log(Level.FINE,msg,thrown);
}
/**
@@ -137,10 +186,8 @@ public class JavaUtilLog extends AbstractLogger
public void ignore(Throwable ignored)
{
- if (Log.isIgnored())
- {
- warn(Log.IGNORED, ignored);
- }
+ if (_logger.isLoggable(Level.WARNING))
+ log(Level.WARNING,Log.IGNORED,ignored);
}
private String format(String msg, Object... args)

Back to the top