You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by rg...@apache.org on 2011/09/17 22:25:37 UTC
svn commit: r1172062 - in
/logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src:
main/java/org/apache/logging/log4j/spi/ test/java/org/apache/logging/log4j/
Author: rgoers
Date: Sat Sep 17 20:25:36 2011
New Revision: 1172062
URL: http://svn.apache.org/viewvc?rev=1172062&view=rev
Log:
Get Throwable from ParameterizedMessage and add to argument list on log method.
Modified:
logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/main/java/org/apache/logging/log4j/spi/AbstractLogger.java
logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/test/java/org/apache/logging/log4j/LoggerTest.java
logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/test/java/org/apache/logging/log4j/SimpleLogger.java
Modified: logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/main/java/org/apache/logging/log4j/spi/AbstractLogger.java
URL: http://svn.apache.org/viewvc/logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/main/java/org/apache/logging/log4j/spi/AbstractLogger.java?rev=1172062&r1=1172061&r2=1172062&view=diff
==============================================================================
--- logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/main/java/org/apache/logging/log4j/spi/AbstractLogger.java (original)
+++ logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/main/java/org/apache/logging/log4j/spi/AbstractLogger.java Sat Sep 17 20:25:36 2011
@@ -275,7 +275,8 @@ public abstract class AbstractLogger imp
*/
public void trace(String message, Object... params) {
if (isEnabled(Level.TRACE, null, message, params)) {
- log(null, getFQCN(), Level.TRACE, new ParameterizedMessage(message, params), null);
+ ParameterizedMessage msg = new ParameterizedMessage(message, params);
+ log(null, getFQCN(), Level.TRACE, msg, msg.getThrowable());
}
}
@@ -288,7 +289,8 @@ public abstract class AbstractLogger imp
*/
public void trace(Marker marker, String message, Object... params) {
if (isEnabled(Level.TRACE, marker, message, params)) {
- log(marker, getFQCN(), Level.TRACE, new ParameterizedMessage(message, params), null);
+ ParameterizedMessage msg = new ParameterizedMessage(message, params);
+ log(marker, getFQCN(), Level.TRACE, msg, msg.getThrowable());
}
}
@@ -468,7 +470,8 @@ public abstract class AbstractLogger imp
*/
public void debug(String message, Object... params) {
if (isEnabled(Level.DEBUG, null, message, params)) {
- log(null, getFQCN(), Level.DEBUG, new ParameterizedMessage(message, params), null);
+ ParameterizedMessage msg = new ParameterizedMessage(message, params);
+ log(null, getFQCN(), Level.DEBUG, msg, msg.getThrowable());
}
}
@@ -481,7 +484,8 @@ public abstract class AbstractLogger imp
*/
public void debug(Marker marker, String message, Object... params) {
if (isEnabled(Level.DEBUG, marker, message, params)) {
- log(marker, getFQCN(), Level.DEBUG, new ParameterizedMessage(message, params), null);
+ ParameterizedMessage msg = new ParameterizedMessage(message, params);
+ log(marker, getFQCN(), Level.DEBUG, msg, msg.getThrowable());
}
}
@@ -663,7 +667,8 @@ public abstract class AbstractLogger imp
*/
public void info(String message, Object... params) {
if (isEnabled(Level.INFO, null, message, params)) {
- log(null, getFQCN(), Level.INFO, new ParameterizedMessage(message, params), null);
+ ParameterizedMessage msg = new ParameterizedMessage(message, params);
+ log(null, getFQCN(), Level.INFO, msg, msg.getThrowable());
}
}
@@ -676,7 +681,8 @@ public abstract class AbstractLogger imp
*/
public void info(Marker marker, String message, Object... params) {
if (isEnabled(Level.INFO, marker, message, params)) {
- log(marker, getFQCN(), Level.INFO, new ParameterizedMessage(message, params), null);
+ ParameterizedMessage msg = new ParameterizedMessage(message, params);
+ log(marker, getFQCN(), Level.INFO, msg, msg.getThrowable());
}
}
@@ -856,7 +862,8 @@ public abstract class AbstractLogger imp
*/
public void warn(String message, Object... params) {
if (isEnabled(Level.WARN, null, message, params)) {
- log(null, getFQCN(), Level.WARN, new ParameterizedMessage(message, params), null);
+ ParameterizedMessage msg = new ParameterizedMessage(message, params);
+ log(null, getFQCN(), Level.WARN, msg, msg.getThrowable());
}
}
@@ -869,7 +876,8 @@ public abstract class AbstractLogger imp
*/
public void warn(Marker marker, String message, Object... params) {
if (isEnabled(Level.WARN, marker, message, params)) {
- log(marker, getFQCN(), Level.WARN, new ParameterizedMessage(message, params), null);
+ ParameterizedMessage msg = new ParameterizedMessage(message, params);
+ log(marker, getFQCN(), Level.WARN, msg, msg.getThrowable());
}
}
@@ -1050,7 +1058,8 @@ public abstract class AbstractLogger imp
*/
public void error(String message, Object... params) {
if (isEnabled(Level.ERROR, null, message, params)) {
- log(null, getFQCN(), Level.ERROR, new ParameterizedMessage(message, params), null);
+ ParameterizedMessage msg = new ParameterizedMessage(message, params);
+ log(null, getFQCN(), Level.ERROR, msg, msg.getThrowable());
}
}
@@ -1063,7 +1072,8 @@ public abstract class AbstractLogger imp
*/
public void error(Marker marker, String message, Object... params) {
if (isEnabled(Level.ERROR, marker, message, params)) {
- log(marker, getFQCN(), Level.ERROR, new ParameterizedMessage(message, params), null);
+ ParameterizedMessage msg = new ParameterizedMessage(message, params);
+ log(marker, getFQCN(), Level.ERROR, msg, msg.getThrowable());
}
}
@@ -1246,7 +1256,8 @@ public abstract class AbstractLogger imp
*/
public void fatal(String message, Object... params) {
if (isEnabled(Level.FATAL, null, message, params)) {
- log(null, getFQCN(), Level.FATAL, new ParameterizedMessage(message, params), null);
+ ParameterizedMessage msg = new ParameterizedMessage(message, params);
+ log(null, getFQCN(), Level.FATAL, msg, msg.getThrowable());
}
}
@@ -1259,7 +1270,8 @@ public abstract class AbstractLogger imp
*/
public void fatal(Marker marker, String message, Object... params) {
if (isEnabled(Level.FATAL, marker, message, params)) {
- log(marker, getFQCN(), Level.FATAL, new ParameterizedMessage(message, params), null);
+ ParameterizedMessage msg = new ParameterizedMessage(message, params);
+ log(marker, getFQCN(), Level.FATAL, msg, msg.getThrowable());
}
}
Modified: logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/test/java/org/apache/logging/log4j/LoggerTest.java
URL: http://svn.apache.org/viewvc/logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/test/java/org/apache/logging/log4j/LoggerTest.java?rev=1172062&r1=1172061&r2=1172062&view=diff
==============================================================================
--- logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/test/java/org/apache/logging/log4j/LoggerTest.java (original)
+++ logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/test/java/org/apache/logging/log4j/LoggerTest.java Sat Sep 17 20:25:36 2011
@@ -17,26 +17,45 @@
package org.apache.logging.log4j;
import org.apache.logging.log4j.message.StructuredDataMessage;
+import org.junit.Before;
import org.junit.Test;
import java.util.Date;
+import java.util.List;
import java.util.Locale;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.assertEquals;
+
/**
*
*/
public class LoggerTest {
- Logger logger = LogManager.getLogger("LoggerTest");
+ SimpleLogger logger = (SimpleLogger) LogManager.getLogger("LoggerTest");
+ List<String> results = logger.getEntries();
+
+ @Before
+ public void setup() {
+ results.clear();
+ }
+
@Test
public void basicFlow() {
logger.entry();
logger.exit();
+ assertEquals(2, results.size());
+ assertTrue("Incorrect Entry", results.get(0).startsWith(" TRACE entry"));
+ assertTrue("incorrect Exit", results.get(1).startsWith(" TRACE exit"));
+
}
@Test
public void throwing() {
logger.throwing(new IllegalArgumentException("Test Exception"));
+ assertEquals(1, results.size());
+ assertTrue("Incorrect Throwing",
+ results.get(0).startsWith(" ERROR throwing java.lang.IllegalArgumentException: Test Exception"));
}
@Test
@@ -45,22 +64,39 @@ public class LoggerTest {
throw new NullPointerException();
} catch (Exception e) {
logger.catching(e);
+ assertEquals(1, results.size());
+ assertTrue("Incorrect Catching",
+ results.get(0).startsWith(" DEBUG catching java.lang.NullPointerException"));
}
}
@Test
public void debug() {
logger.debug("Debug message");
+ assertEquals(1, results.size());
+ assertTrue("Incorrect message", results.get(0).startsWith(" DEBUG Debug message"));
}
@Test
public void debugObject() {
logger.debug(new Date());
+ assertEquals(1, results.size());
+ assertTrue("Invalid length", results.get(0).length() > 7);
}
@Test
public void debugWithParms() {
logger.debug("Hello, {}", "World");
+ assertEquals(1, results.size());
+ assertTrue("Incorrect substitution", results.get(0).startsWith(" DEBUG Hello, World"));
+ }
+
+ @Test
+ public void debugWithParmsAndThrowable() {
+ logger.debug("Hello, {}", "World", new RuntimeException("Test Exception"));
+ assertEquals(1, results.size());
+ assertTrue("Unexpected results: " + results.get(0),
+ results.get(0).startsWith(" DEBUG Hello, World java.lang.RuntimeException: Test Exception"));
}
@Test
@@ -70,6 +106,11 @@ public class LoggerTest {
logger.debug("Debug message");
ThreadContext.clear();
logger.debug("Debug message");
+ assertEquals(2, results.size());
+ assertTrue("Incorrect MDC: " + results.get(0),
+ results.get(0).startsWith(" DEBUG Debug message {TestYear=2010}"));
+ assertTrue("MDC not cleared?: " + results.get(1),
+ results.get(1).startsWith(" DEBUG Debug message"));
}
@Test
@@ -83,5 +124,8 @@ public class LoggerTest {
msg.put("Amount", "200.00");
logger.info(MarkerManager.getMarker("EVENT"), msg);
ThreadContext.clear();
+ assertEquals(1, results.size());
+ assertTrue("Incorrect structured data: " + results.get(0),results.get(0).startsWith(
+ " INFO Transfer [Audit@18060 Amount=\"200.00\" FromAccount=\"123457\" ToAccount=\"123456\"] Transfer Complete"));
}
}
Modified: logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/test/java/org/apache/logging/log4j/SimpleLogger.java
URL: http://svn.apache.org/viewvc/logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/test/java/org/apache/logging/log4j/SimpleLogger.java?rev=1172062&r1=1172061&r2=1172062&view=diff
==============================================================================
--- logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/test/java/org/apache/logging/log4j/SimpleLogger.java (original)
+++ logging/log4j/branches/BRANCH_2_0_EXPERIMENTAL/rgoers/log4j2-api/src/test/java/org/apache/logging/log4j/SimpleLogger.java Sat Sep 17 20:25:36 2011
@@ -21,17 +21,25 @@ import org.apache.logging.log4j.spi.Abst
import java.io.ByteArrayOutputStream;
import java.io.PrintStream;
+import java.util.ArrayList;
+import java.util.List;
import java.util.Map;
/**
*
*/
public class SimpleLogger extends AbstractLogger {
+ private List<String> array = new ArrayList<String>();
+
@Override
protected String getFQCN() {
return SimpleLogger.class.getName();
}
+ public List<String> getEntries() {
+ return array;
+ }
+
@Override
public void log(Marker marker, String fqcn, Level level, Message msg, Throwable throwable) {
StringBuilder sb = new StringBuilder();
@@ -58,7 +66,8 @@ public class SimpleLogger extends Abstra
t.printStackTrace(new PrintStream(baos));
sb.append(baos.toString());
}
- System.out.println(sb.toString());
+ array.add(sb.toString());
+ //System.out.println(sb.toString());
}
@Override