diff options
author | Ola Aunrønning <olaa@verizonmedia.com> | 2020-05-18 17:43:50 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-18 17:43:50 +0200 |
commit | 37e567a295a6f1dec583a407225d70bfb690dc70 (patch) | |
tree | a57190a4321af9eaf125a060b9eb281c04cae416 | |
parent | 2cc50f41e5455ded8b5c99dc326049cbb003ceaa (diff) | |
parent | dbbe57a24b4e2736b136ce306aa52d17173f8661 (diff) |
Merge pull request #13288 from vespa-engine/olaa/create-telegraf-conf-folder
Create telegraf.conf parent folder
-rw-r--r-- | metrics-proxy/src/main/java/ai/vespa/metricsproxy/telegraf/Telegraf.java | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/telegraf/Telegraf.java b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/telegraf/Telegraf.java index 5c7d8b3ce83..f60a3491a81 100644 --- a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/telegraf/Telegraf.java +++ b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/telegraf/Telegraf.java @@ -3,6 +3,8 @@ package ai.vespa.metricsproxy.telegraf; import com.google.inject.Inject; import com.yahoo.component.AbstractComponent; + +import java.io.File; import java.util.logging.Level; import com.yahoo.system.execution.ProcessExecutor; import com.yahoo.system.execution.ProcessResult; @@ -40,7 +42,7 @@ public class Telegraf extends AbstractComponent { public Telegraf(TelegrafRegistry telegrafRegistry, TelegrafConfig telegrafConfig) { this.telegrafRegistry = telegrafRegistry; telegrafRegistry.addInstance(this); - writeConfig(telegrafConfig, uncheck(() -> new FileWriter(TELEGRAF_CONFIG_PATH)), TELEGRAF_LOG_FILE_PATH); + writeConfig(telegrafConfig, getConfigWriter(), TELEGRAF_LOG_FILE_PATH); restartTelegraf(); } @@ -93,6 +95,12 @@ public class Telegraf extends AbstractComponent { } + private static Writer getConfigWriter() { + File configFile = new File(TELEGRAF_CONFIG_PATH); + configFile.getParentFile().mkdirs(); + return uncheck(() -> new FileWriter(configFile)); + } + @Override public void deconstruct() { telegrafRegistry.removeInstance(this); |