summaryrefslogtreecommitdiffstats
path: root/metrics-proxy
diff options
context:
space:
mode:
authorOla Aunrønning <olaa@verizonmedia.com>2020-02-21 17:29:55 +0100
committerOla Aunrønning <olaa@verizonmedia.com>2020-02-21 17:33:03 +0100
commit06878488e85e3d1431d3c91e42dbdaac264cb01b (patch)
treea913161fa706f439b2ce7bb77711b93e8cc49440 /metrics-proxy
parent3ea5cdb224cdb166b5d3499667e4d9ec99841efd (diff)
Log warning when stdErr is not empty. More debug logging
Diffstat (limited to 'metrics-proxy')
-rw-r--r--metrics-proxy/src/main/java/ai/vespa/metricsproxy/telegraf/Telegraf.java15
-rw-r--r--metrics-proxy/src/main/java/ai/vespa/metricsproxy/telegraf/TelegrafRegistry.java4
-rw-r--r--metrics-proxy/src/test/java/ai/vespa/metricsproxy/telegraf/TelegrafTest.java2
3 files changed, 15 insertions, 6 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 1c8401d003a..42c8a13e626 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,7 +3,9 @@ package ai.vespa.metricsproxy.telegraf;
import com.google.inject.Inject;
import com.yahoo.component.AbstractComponent;
+import com.yahoo.log.LogLevel;
import com.yahoo.system.execution.ProcessExecutor;
+import com.yahoo.system.execution.ProcessResult;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.VelocityEngine;
@@ -47,22 +49,29 @@ public class Telegraf extends AbstractComponent {
}
private void restartTelegraf() {
- logger.info("Restarting Telegraf");
executeCommand("service telegraf restart");
}
private void stopTelegraf() {
- logger.info("Stopping Telegraf");
executeCommand("service telegraf stop");
}
private void executeCommand(String command) {
+ logger.info(String.format("Running command: %s", command));
ProcessExecutor processExecutor = new ProcessExecutor
.Builder(10)
.successExitCodes(0)
.build();
- uncheck(() -> processExecutor.execute(command))
+ ProcessResult processResult = uncheck(() -> processExecutor.execute(command))
.orElseThrow(() -> new RuntimeException("Timed out running command: " + command));
+
+ logger.log(LogLevel.DEBUG, () -> String.format("Exit code: %d\nstdOut: %s\nstdErr: %s",
+ processResult.exitCode,
+ processResult.stdOut,
+ processResult.stdErr));
+
+ if (!processResult.stdErr.isBlank())
+ logger.warning(String.format("stdErr not empty: %s", processResult.stdErr));
}
@SuppressWarnings("ConstantConditions")
diff --git a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/telegraf/TelegrafRegistry.java b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/telegraf/TelegrafRegistry.java
index dbc08a96777..23da51ea082 100644
--- a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/telegraf/TelegrafRegistry.java
+++ b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/telegraf/TelegrafRegistry.java
@@ -18,12 +18,12 @@ public class TelegrafRegistry {
private static final Logger logger = Logger.getLogger(TelegrafRegistry.class.getName());
public void addInstance(Telegraf telegraf) {
- logger.log(LogLevel.DEBUG, () -> "Adding Telegraf instance to registry: " + telegraf);
+ logger.log(LogLevel.DEBUG, () -> "Adding Telegraf instance to registry: " + telegraf.hashCode());
telegrafInstances.add(telegraf);
}
public void removeInstance(Telegraf telegraf) {
- logger.log(LogLevel.DEBUG, () -> "Removing Telegraf instance from registry: " + telegraf);
+ logger.log(LogLevel.DEBUG, () -> "Removing Telegraf instance from registry: " + telegraf.hashCode());
telegrafInstances.remove(telegraf);
}
diff --git a/metrics-proxy/src/test/java/ai/vespa/metricsproxy/telegraf/TelegrafTest.java b/metrics-proxy/src/test/java/ai/vespa/metricsproxy/telegraf/TelegrafTest.java
index 00cbb4bf033..9ad31a0d9e8 100644
--- a/metrics-proxy/src/test/java/ai/vespa/metricsproxy/telegraf/TelegrafTest.java
+++ b/metrics-proxy/src/test/java/ai/vespa/metricsproxy/telegraf/TelegrafTest.java
@@ -13,7 +13,6 @@ import static org.junit.Assert.*;
*/
public class TelegrafTest {
-
@Test
public void test_writing_correct_telegraf_plugin_config() {
TelegrafConfig telegrafConfig = new TelegrafConfig.Builder()
@@ -39,4 +38,5 @@ public class TelegrafTest {
String expectedConfig = TestUtil.getFileContents( "telegraf-config-with-two-cloudwatch-plugins.txt");
assertEquals(expectedConfig, stringWriter.toString());
}
+
}