summaryrefslogtreecommitdiffstats
path: root/node-admin/src/main/java/com/yahoo/vespa/hosted/node
diff options
context:
space:
mode:
authorValerij Fredriksen <valerijf@yahooinc.com>2022-05-09 14:26:03 +0200
committerValerij Fredriksen <valerijf@yahooinc.com>2022-05-09 14:26:03 +0200
commit73e8f00c796952138f36560679266325822eca4a (patch)
treea61cf56d30eb1e87e59bdf45f5de5af0b803b4cb /node-admin/src/main/java/com/yahoo/vespa/hosted/node
parentc72f4f8814368b461ce03759edf0b2dbe2294be0 (diff)
Sync ZK logs
Diffstat (limited to 'node-admin/src/main/java/com/yahoo/vespa/hosted/node')
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/sync/SyncFileInfo.java15
1 files changed, 14 insertions, 1 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/sync/SyncFileInfo.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/sync/SyncFileInfo.java
index a9f2cd219b9..ffce5e6e68b 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/sync/SyncFileInfo.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/sync/SyncFileInfo.java
@@ -2,10 +2,13 @@
package com.yahoo.vespa.hosted.node.admin.maintenance.sync;
import com.yahoo.config.provision.ApplicationId;
+import com.yahoo.vespa.hosted.node.admin.task.util.file.UnixPath;
import java.net.URI;
import java.nio.file.Path;
import java.time.Duration;
+import java.time.ZoneOffset;
+import java.time.format.DateTimeFormatter;
import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
@@ -15,6 +18,9 @@ import java.util.Optional;
*/
public class SyncFileInfo {
+ private static final DateTimeFormatter DATE_TIME_FORMATTER = DateTimeFormatter
+ .ofPattern("yyyy-MM-dd.HH-mm-ss").withZone(ZoneOffset.UTC);
+
private final Path source;
private final URI destination;
private final Compression uploadCompression;
@@ -53,12 +59,19 @@ public class SyncFileInfo {
String filename = logFile.getFileName().toString();
Compression compression;
String dir = null;
+ String remoteFilename = logFile.getFileName().toString();
Duration minDurationBetweenSync = null;
if (filename.startsWith("vespa.log")) {
dir = "logs/vespa/";
compression = Compression.ZSTD;
minDurationBetweenSync = filename.length() == 9 ? rotatedOnly ? Duration.ofHours(1) : Duration.ZERO : null;
+ } else if (filename.startsWith("zookeeper.") && filename.endsWith(".log")) {
+ compression = Compression.ZSTD;
+ dir = "logs/zookeeper/";
+ remoteFilename = filename.endsWith(".0.log") ? "zookeeper.log" :
+ "zookeeper.log-" + DATE_TIME_FORMATTER.format(new UnixPath(logFile).getLastModifiedTime());
+ minDurationBetweenSync = filename.endsWith(".0.log") ? rotatedOnly ? Duration.ofHours(1) : Duration.ZERO : null;
} else {
compression = filename.endsWith(".zst") ? Compression.NONE : Compression.ZSTD;
if (rotatedOnly && compression != Compression.NONE)
@@ -71,7 +84,7 @@ public class SyncFileInfo {
if (dir == null) return Optional.empty();
return Optional.of(new SyncFileInfo(
- logFile, uri.resolve(dir + logFile.getFileName() + compression.extension), compression, defaultTags(owner),
+ logFile, uri.resolve(dir + remoteFilename + compression.extension), compression, defaultTags(owner),
minDurationBetweenSync));
}