summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArne H Juul <arnej@yahooinc.com>2021-12-17 09:53:28 +0000
committerArne H Juul <arnej@yahooinc.com>2021-12-17 09:53:28 +0000
commitca04fe905a5e9b604d0a19da11b3e679979c1abe (patch)
treee657aa04b17a13357f02c9cf181004cd28c8cd0a
parent8a4d1c484e09a697dc7a4ac4441268d197bde3a2 (diff)
ensure "splunk stop" is run on shutdown
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/admin/LogForwarder.java10
-rw-r--r--config-model/src/test/java/com/yahoo/config/model/provision/ModelProvisioningTest.java4
2 files changed, 14 insertions, 0 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/LogForwarder.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/LogForwarder.java
index a01d061c21f..cc1369c2470 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/admin/LogForwarder.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/LogForwarder.java
@@ -5,6 +5,7 @@ import com.yahoo.cloud.config.LogforwarderConfig;
import com.yahoo.config.model.producer.AbstractConfigProducer;
import com.yahoo.vespa.model.AbstractService;
import com.yahoo.vespa.model.PortAllocBridge;
+import java.util.Optional;
public class LogForwarder extends AbstractService implements LogforwarderConfig.Producer {
@@ -79,4 +80,13 @@ public class LogForwarder extends AbstractService implements LogforwarderConfig.
}
}
+ @Override
+ public Optional<String> getPreShutdownCommand() {
+ var builder = new LogforwarderConfig.Builder();
+ getConfig(builder);
+ var cfg = new LogforwarderConfig(builder);
+ var home = cfg.splunkHome();
+ return Optional.of("/usr/bin/env SPLUNK_HOME="+home+" "+home+"/bin/splunk stop");
+ }
+
}
diff --git a/config-model/src/test/java/com/yahoo/config/model/provision/ModelProvisioningTest.java b/config-model/src/test/java/com/yahoo/config/model/provision/ModelProvisioningTest.java
index 0866e1174ee..171958f2bfa 100644
--- a/config-model/src/test/java/com/yahoo/config/model/provision/ModelProvisioningTest.java
+++ b/config-model/src/test/java/com/yahoo/config/model/provision/ModelProvisioningTest.java
@@ -929,6 +929,10 @@ public class ModelProvisioningTest {
assertNull(hostResource.getService("logserver"));
assertNotNull(hostResource.getService("container"));
assertNotNull(hostResource.getService("logforwarder"));
+
+ var lfs = hostResource.getService("logforwarder");
+ String shutdown = lfs.getPreShutdownCommand().orElse("<none>");
+ assertThat(shutdown, is("/usr/bin/env SPLUNK_HOME=/opt/splunkforwarder /opt/splunkforwarder/bin/splunk stop"));
}