From 9b1d140dd34b202ced09b35e6e441df1aa25a8a0 Mon Sep 17 00:00:00 2001 From: Jon Bratseth Date: Thu, 22 Oct 2020 14:47:35 +0200 Subject: Use data dir for log config --- .../src/main/java/com/yahoo/vespa/defaults/Defaults.java | 1 + node-repository/etc/quest-log.conf | 1 - .../vespa/hosted/provision/autoscale/MemoryMetricsDb.java | 2 -- .../vespa/hosted/provision/autoscale/QuestMetricsDb.java | 13 +++++++++++-- 4 files changed, 12 insertions(+), 5 deletions(-) delete mode 100644 node-repository/etc/quest-log.conf diff --git a/defaults/src/main/java/com/yahoo/vespa/defaults/Defaults.java b/defaults/src/main/java/com/yahoo/vespa/defaults/Defaults.java index a9b4c46fcb4..04377f887b5 100644 --- a/defaults/src/main/java/com/yahoo/vespa/defaults/Defaults.java +++ b/defaults/src/main/java/com/yahoo/vespa/defaults/Defaults.java @@ -124,6 +124,7 @@ public class Defaults { /** * Returns the path to the root under which Vespa should read and write files. * Will not end with a "/". + * * @return the vespa home directory */ public String vespaHome() { return vespaHome; } diff --git a/node-repository/etc/quest-log.conf b/node-repository/etc/quest-log.conf deleted file mode 100644 index eeef9104913..00000000000 --- a/node-repository/etc/quest-log.conf +++ /dev/null @@ -1 +0,0 @@ -writers= \ No newline at end of file diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/MemoryMetricsDb.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/MemoryMetricsDb.java index 022a565e7f2..999acad7ab0 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/MemoryMetricsDb.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/MemoryMetricsDb.java @@ -5,8 +5,6 @@ import com.yahoo.collections.Pair; import com.yahoo.vespa.hosted.provision.Node; import com.yahoo.vespa.hosted.provision.NodeRepository; -import javax.inject.Inject; -import java.time.Clock; import java.time.Instant; import java.util.ArrayList; import java.util.Collection; diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/QuestMetricsDb.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/QuestMetricsDb.java index 9054849e317..b1585922f38 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/QuestMetricsDb.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/QuestMetricsDb.java @@ -1,6 +1,7 @@ // Copyright Verizon Media. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.hosted.provision.autoscale; +import com.google.inject.Inject; import com.yahoo.collections.ListMap; import com.yahoo.collections.Pair; import com.yahoo.io.IOUtils; @@ -18,7 +19,6 @@ import io.questdb.griffin.SqlExecutionContext; import io.questdb.griffin.SqlExecutionContextImpl; import io.questdb.std.str.Path; -import javax.inject.Inject; import java.io.File; import java.time.Clock; import java.time.Duration; @@ -56,9 +56,18 @@ public class QuestMetricsDb implements MetricsDb { public QuestMetricsDb(String dataDir, Clock clock) { this.clock = clock; + + if (dataDir.startsWith(Defaults.getDefaults().vespaHome()) + && ! new File(Defaults.getDefaults().vespaHome()).exists()) + dataDir = "data"; // We're injected, but not on a node with Vespa installed this.dataDir = dataDir; - System.setProperty("questdbLog", "etc/quest-log.conf"); // silence Questdb's custom logging system + IOUtils.createDirectory(dataDir + "/" + tableName); + + // silence Questdb's custom logging system + IOUtils.writeFile(new File(dataDir, "quest-log.conf"), new byte[0]); + System.setProperty("questdbLog", dataDir + "/quest-log.conf"); + CairoConfiguration configuration = new DefaultCairoConfiguration(dataDir); engine = new CairoEngine(configuration); ensureExists(tableName); -- cgit v1.2.3