This is an automated email from the ASF dual-hosted git repository.

kbowers pushed a commit to branch main
in repository 
https://gitbox.apache.org/repos/asf/incubator-kie-kogito-benchmarks.git

commit bc44f3800cbc19266424383be4244c9c0041480a
Author: Marián Macik <[email protected]>
AuthorDate: Wed Dec 1 19:48:49 2021 +0100

    BAQE-2176 - Archive all logs in case of an error
---
 .../java/org/kie/kogito/benchmarks/framework/Logs.java | 18 +++++++++++++-----
 .../kie/kogito/benchmarks/framework/WebpageTester.java |  2 +-
 .../kie/kogito/benchmarks/AbstractTemplateTest.java    |  8 +++-----
 3 files changed, 17 insertions(+), 11 deletions(-)

diff --git 
a/kogito-benchmarks-framework/src/main/java/org/kie/kogito/benchmarks/framework/Logs.java
 
b/kogito-benchmarks-framework/src/main/java/org/kie/kogito/benchmarks/framework/Logs.java
index ed894b9..e28cb39 100644
--- 
a/kogito-benchmarks-framework/src/main/java/org/kie/kogito/benchmarks/framework/Logs.java
+++ 
b/kogito-benchmarks-framework/src/main/java/org/kie/kogito/benchmarks/framework/Logs.java
@@ -28,6 +28,7 @@ import java.util.Set;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
+import java.util.stream.Stream;
 
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
@@ -159,9 +160,9 @@ public class Logs {
         }
     }
 
-    public static void archiveLog(String testClass, String testMethod, File 
log) throws IOException {
-        if (log == null || !log.exists()) {
-            logger.warn("log must be a valid, existing file. Skipping 
operation.");
+    public static void archiveLogs(String testClass, String testMethod, Path 
appLogsDir) throws IOException {
+        if (appLogsDir == null || !appLogsDir.toFile().exists()) {
+            logger.warn("appLogsDir must be a valid, existing directory. 
Skipping operation.");
             return;
         }
         if (StringUtils.isBlank(testClass)) {
@@ -172,8 +173,15 @@ public class Logs {
         }
         Path destDir = getLogsDir(testClass, testMethod);
         Files.createDirectories(destDir);
-        String filename = log.getName();
-        Files.copy(log.toPath(), destDir.resolve(filename), REPLACE_EXISTING);
+        try (Stream<Path> walk = Files.walk(appLogsDir)) {
+            walk.skip(1).forEach(path -> { // skip root directory
+                try {
+                    Files.copy(path, 
destDir.resolve(appLogsDir.relativize(path)), REPLACE_EXISTING);
+                } catch (IOException e) {
+                    logger.warn("Unable to archive file: {}", path, e);
+                }
+            });
+        }
     }
 
     public static void writeReport(String testClass, String testMethod, String 
text) throws IOException {
diff --git 
a/kogito-benchmarks-framework/src/main/java/org/kie/kogito/benchmarks/framework/WebpageTester.java
 
b/kogito-benchmarks-framework/src/main/java/org/kie/kogito/benchmarks/framework/WebpageTester.java
index b192a27..9aa4c1b 100644
--- 
a/kogito-benchmarks-framework/src/main/java/org/kie/kogito/benchmarks/framework/WebpageTester.java
+++ 
b/kogito-benchmarks-framework/src/main/java/org/kie/kogito/benchmarks/framework/WebpageTester.java
@@ -82,7 +82,7 @@ public class WebpageTester {
                 (StringUtils.isNotBlank(webPage) ? webPage + " must contain 
string: " : "Empty webpage does not contain string: ") +
                 "`" + stringToLookFor + "'";
         if (!found) {
-            logger.info(failureMessage);
+            logger.warn(failureMessage);
         }
         assertTrue(found, failureMessage);
         return foundTimestamp - startTime;
diff --git 
a/kogito-benchmarks-tests/src/test/java/org/kie/kogito/benchmarks/AbstractTemplateTest.java
 
b/kogito-benchmarks-tests/src/test/java/org/kie/kogito/benchmarks/AbstractTemplateTest.java
index d1ecaf7..1df13b6 100644
--- 
a/kogito-benchmarks-tests/src/test/java/org/kie/kogito/benchmarks/AbstractTemplateTest.java
+++ 
b/kogito-benchmarks-tests/src/test/java/org/kie/kogito/benchmarks/AbstractTemplateTest.java
@@ -55,7 +55,7 @@ import static 
org.kie.kogito.benchmarks.framework.Commands.startApp;
 import static org.kie.kogito.benchmarks.framework.Commands.waitForTcpClosed;
 import static org.kie.kogito.benchmarks.framework.Logs.SKIP;
 import static org.kie.kogito.benchmarks.framework.Logs.appendln;
-import static org.kie.kogito.benchmarks.framework.Logs.archiveLog;
+import static org.kie.kogito.benchmarks.framework.Logs.archiveLogs;
 import static org.kie.kogito.benchmarks.framework.Logs.checkListeningHost;
 import static org.kie.kogito.benchmarks.framework.Logs.checkLog;
 import static org.kie.kogito.benchmarks.framework.Logs.checkThreshold;
@@ -190,8 +190,7 @@ public abstract class AbstractTemplateTest {
                 processStopper(pA, true);
             }
             // Archive logs no matter what
-            archiveLog(cn, mn, buildLogA);
-            archiveLog(cn, mn, runLogA);
+            archiveLogs(cn, mn, appDir.toPath().resolve("logs"));
             writeReport(cn, mn, whatIDidReport.toString());
         }
     }
@@ -375,8 +374,7 @@ public abstract class AbstractTemplateTest {
                 processStopper(pA, true);
             }
             // Archive logs no matter what
-            archiveLog(cn, mn, buildLogA);
-            archiveLog(cn, mn, runLogA);
+            archiveLogs(cn, mn, appDir.toPath().resolve("logs"));
             writeReport(cn, mn, whatIDidReport.toString());
         }
     }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to