summaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorArne Juul <arnej@yahoo-inc.com>2017-10-13 13:15:09 +0000
committerArne Juul <arnej@yahoo-inc.com>2017-10-13 13:17:35 +0000
commitec0324688eca1bfadbb3528a84d6a069375d79ad (patch)
tree914973f6944e766f7fb51c0281c8e6f55c466497 /config-model
parentd7bd2b2a306c9fefa0e66a8a7e3ac143c1318511 (diff)
allow splunk-home attribute
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/admin/LogForwarder.java16
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminBuilderBase.java1
-rw-r--r--config-model/src/main/resources/schema/admin.rnc1
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/admin/DedicatedAdminV4Test.java1
-rw-r--r--config-model/src/test/schema-test-files/services.xml2
5 files changed, 16 insertions, 5 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 46f5807b350..4f766732e4e 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
@@ -13,16 +13,21 @@ public class LogForwarder extends AbstractService implements LogforwarderConfig.
public static class Config {
public final String deploymentServer;
public final String clientName;
+ public final String splunkHome;
- private Config(String ds, String cn) {
+ private Config(String ds, String cn, String sh) {
this.deploymentServer = ds;
this.clientName = cn;
+ this.splunkHome = sh;
}
public Config withDeploymentServer(String ds) {
- return new Config(ds, clientName);
+ return new Config(ds, clientName, splunkHome);
}
public Config withClientName(String cn) {
- return new Config(deploymentServer, cn);
+ return new Config(deploymentServer, cn, splunkHome);
+ }
+ public Config withSplunkHome(String sh) {
+ return new Config(deploymentServer, clientName, sh);
}
}
@@ -40,7 +45,7 @@ public class LogForwarder extends AbstractService implements LogforwarderConfig.
}
public static Config cfg() {
- return new Config(null, null);
+ return new Config(null, null, null);
}
/**
@@ -59,6 +64,9 @@ public class LogForwarder extends AbstractService implements LogforwarderConfig.
public void getConfig(LogforwarderConfig.Builder builder) {
builder.deploymentServer(config.deploymentServer);
builder.clientName(config.clientName);
+ if (config.splunkHome != null) {
+ builder.splunkHome(config.splunkHome);
+ }
}
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminBuilderBase.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminBuilderBase.java
index 3049112ac0a..a3a1a0fbebc 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminBuilderBase.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminBuilderBase.java
@@ -117,6 +117,7 @@ public abstract class DomAdminBuilderBase extends VespaDomBuilder.DomConfigProdu
int i = 0;
for (ModelElement e : logForwardingElement.getChildren("splunk")) {
LogForwarder.Config cfg = LogForwarder.cfg()
+ .withSplunkHome(e.getStringAttribute("splunk-home"))
.withDeploymentServer(e.getStringAttribute("deployment-server"))
.withClientName(e.getStringAttribute("client-name"));
for (HostResource host : admin.getHostSystem().getHosts()) {
diff --git a/config-model/src/main/resources/schema/admin.rnc b/config-model/src/main/resources/schema/admin.rnc
index 3ab02af3efd..cdf26807bcb 100644
--- a/config-model/src/main/resources/schema/admin.rnc
+++ b/config-model/src/main/resources/schema/admin.rnc
@@ -117,6 +117,7 @@ ClusterControllers = element cluster-controllers {
LogForwarding = element logforwarding {
element splunk {
+ attribute splunk-home { xsd:string }? &
attribute deployment-server { xsd:string } &
attribute client-name { xsd:string }
}
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/admin/DedicatedAdminV4Test.java b/config-model/src/test/java/com/yahoo/vespa/model/admin/DedicatedAdminV4Test.java
index e3f773a64c2..e2ed57251d9 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/admin/DedicatedAdminV4Test.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/admin/DedicatedAdminV4Test.java
@@ -176,6 +176,7 @@ public class DedicatedAdminV4Test {
assertEquals("foo:123", config.deploymentServer());
assertEquals("foocli", config.clientName());
+ assertEquals("/opt/splunkforwarder", config.splunkHome());
}
// Other host's forwarder
diff --git a/config-model/src/test/schema-test-files/services.xml b/config-model/src/test/schema-test-files/services.xml
index 4b6eb12208c..bf2a924e62d 100644
--- a/config-model/src/test/schema-test-files/services.xml
+++ b/config-model/src/test/schema-test-files/services.xml
@@ -27,7 +27,7 @@
</consumer>
</metrics>
<logforwarding>
- <splunk deployment-server="foo:8989" client-name="foobar"/>
+ <splunk deployment-server="foo:8989" client-name="foobar" splunk-home="/opt/splunk"/>
</logforwarding>
</admin>