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 2018/12/23 06:59:17 UTC
[logging-log4j2] 02/02: LOG4J2-1906 - Add diagnostics
This is an automated email from the ASF dual-hosted git repository.
rgoers pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git
commit 3acea6c6d566d8f54da45651dbf37c1ea3967ef3
Author: Ralph Goers <rg...@apache.org>
AuthorDate: Sat Dec 22 23:41:09 2018 -0700
LOG4J2-1906 - Add diagnostics
---
.../RollingAppenderDirectWrite1906Test.java | 43 +++++++++++++++++++++-
1 file changed, 42 insertions(+), 1 deletion(-)
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWrite1906Test.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWrite1906Test.java
index c2b7c59..a055fc2 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWrite1906Test.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWrite1906Test.java
@@ -19,10 +19,17 @@ package org.apache.logging.log4j.core.appender.rolling;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
+import java.io.IOException;
+import java.util.List;
+import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.junit.LoggerContextRule;
+import org.apache.logging.log4j.status.StatusData;
+import org.apache.logging.log4j.status.StatusListener;
+import org.apache.logging.log4j.status.StatusLogger;
import org.junit.Before;
+import org.junit.BeforeClass;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
@@ -50,6 +57,11 @@ public class RollingAppenderDirectWrite1906Test {
@Rule
public RuleChain chain = loggerContextRule.withCleanFoldersRule(DIR);
+ @BeforeClass
+ public static void setupClass() throws Exception {
+ StatusLogger.getLogger().registerListener(new NoopStatusListener());
+ }
+
private Logger logger;
@Before
@@ -80,7 +92,7 @@ public class RollingAppenderDirectWrite1906Test {
String[] parts = line.split((" "));
String expected = "rollingfile." + parts[0] + ".log";
- assertEquals("Incorrect file name. Expected: " + expected + " Actual: " + actual, expected, actual);
+ assertEquals(logFileNameError(expected, actual), expected, actual);
++found;
}
reader.close();
@@ -88,4 +100,33 @@ public class RollingAppenderDirectWrite1906Test {
assertEquals("Incorrect number of events read. Expected " + count + ", Actual " + found, count, found);
}
+
+
+ private String logFileNameError(String expected, String actual) {
+ final List<StatusData> statusData = StatusLogger.getLogger().getStatusData();
+ final StringBuilder sb = new StringBuilder();
+ for (StatusData statusItem : statusData) {
+ sb.append(statusItem.getFormattedStatus());
+ sb.append("\n");
+ }
+ sb.append("Incorrect file name. Expected: ").append(expected).append(" Actual: ").append(actual);
+ return sb.toString();
+ }
+
+ private static class NoopStatusListener implements StatusListener {
+ @Override
+ public void log(StatusData data) {
+
+ }
+
+ @Override
+ public Level getStatusLevel() {
+ return Level.TRACE;
+ }
+
+ @Override
+ public void close() throws IOException {
+
+ }
+ }
}