aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/eu/olli/cowmoonication/search/LogFilesSearcher.java
diff options
context:
space:
mode:
authorCow <cow@volloeko.de>2020-06-22 04:22:47 +0200
committerCow <cow@volloeko.de>2020-06-22 04:22:47 +0200
commit77735fd8edacd9dc996db8de424f5ee7c73dff77 (patch)
tree8b63bc2b6140faf12a37804ce31a108356816bda /src/main/java/eu/olli/cowmoonication/search/LogFilesSearcher.java
parent3d3f861866c2196bdb83bdfbd73e58aa56be2966 (diff)
downloadCowlection-77735fd8edacd9dc996db8de424f5ee7c73dff77.tar.gz
Cowlection-77735fd8edacd9dc996db8de424f5ee7c73dff77.tar.bz2
Cowlection-77735fd8edacd9dc996db8de424f5ee7c73dff77.zip
Mc log file search: now also analyzes latest.log
Diffstat (limited to 'src/main/java/eu/olli/cowmoonication/search/LogFilesSearcher.java')
-rw-r--r--src/main/java/eu/olli/cowmoonication/search/LogFilesSearcher.java16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/main/java/eu/olli/cowmoonication/search/LogFilesSearcher.java b/src/main/java/eu/olli/cowmoonication/search/LogFilesSearcher.java
index a8ebef8..04ee88a 100644
--- a/src/main/java/eu/olli/cowmoonication/search/LogFilesSearcher.java
+++ b/src/main/java/eu/olli/cowmoonication/search/LogFilesSearcher.java
@@ -10,8 +10,11 @@ import java.io.*;
import java.nio.file.DirectoryStream;
import java.nio.file.Files;
import java.nio.file.Path;
+import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
@@ -57,9 +60,13 @@ class LogFilesSearcher {
List<LogEntry> searchResults = new ArrayList<>();
for (Path path : paths) {
boolean foundSearchTermInFile = false;
- try (BufferedReader in = new BufferedReader(new InputStreamReader(new GZIPInputStream(new FileInputStream(path.toFile()))))) {
+ try (BufferedReader in = (path.endsWith("latest.log")
+ ? new BufferedReader(new InputStreamReader(new FileInputStream(path.toFile()))) // latest.log
+ : new BufferedReader(new InputStreamReader(new GZIPInputStream(new FileInputStream(path.toFile())))))) { // ....log.gz
String fileName = path.getFileName().toString(); // 2020-04-20-3.log.gz
- String date = fileName.substring(0, fileName.lastIndexOf('-'));
+ String date = fileName.equals("latest.log")
+ ? LocalDate.now().format(DateTimeFormatter.ISO_LOCAL_DATE)
+ : fileName.substring(0, fileName.lastIndexOf('-'));
String content;
LogEntry logEntry = null;
while ((content = in.readLine()) != null) {
@@ -155,6 +162,11 @@ class LogFilesSearcher {
} else {
System.err.println("Error with " + path.toString());
}
+ } else if (path.getFileName().toString().equals("latest.log")) {
+ LocalDate lastModified = Instant.ofEpochMilli(path.toFile().lastModified()).atZone(ZoneId.systemDefault()).toLocalDate();
+ if (!lastModified.isBefore(startDate) && !lastModified.isAfter(endDate)) {
+ fileNames.add(path);
+ }
}
}
}