diff options
author | Arne Juul <arnej@yahoo-inc.com> | 2017-10-13 13:15:09 +0000 |
---|---|---|
committer | Arne Juul <arnej@yahoo-inc.com> | 2017-10-13 13:17:35 +0000 |
commit | ec0324688eca1bfadbb3528a84d6a069375d79ad (patch) | |
tree | 914973f6944e766f7fb51c0281c8e6f55c466497 /config-model | |
parent | d7bd2b2a306c9fefa0e66a8a7e3ac143c1318511 (diff) |
allow splunk-home attribute
Diffstat (limited to 'config-model')
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> |