diff options
author | valerijf <valerijf@yahoo-inc.com> | 2017-06-16 12:21:53 +0200 |
---|---|---|
committer | valerijf <valerijf@yahoo-inc.com> | 2017-06-16 12:21:53 +0200 |
commit | 1c96b5e99fc297c6e34aa75fd694c43197da71ae (patch) | |
tree | 19fcdf67bdf36f6b6602b124d184cebdb1198b86 /node-admin/src/main/java | |
parent | de9a31faa31cc7c9f9adb33ed564df4da6060ea3 (diff) |
Let secret-agent report host_life.alive inside container
Diffstat (limited to 'node-admin/src/main/java')
2 files changed, 29 insertions, 17 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainer.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainer.java index 0b0d141e46d..ae86b746669 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainer.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainer.java @@ -74,28 +74,43 @@ public class StorageMaintainer { final Path yamasAgentFolder = environment.pathInNodeAdminFromPathInNode(containerName, "/etc/yamas-agent/"); Path vespaCheckPath = Paths.get(getDefaults().underVespaHome("libexec/yms/yms_check_vespa")); - SecretAgentScheduleMaker scheduleMaker = new SecretAgentScheduleMaker("vespa", 60, vespaCheckPath, "all") + SecretAgentScheduleMaker vespaSchedule = new SecretAgentScheduleMaker("vespa", 60, vespaCheckPath, "all") .withTag("namespace", "Vespa") .withTag("role", "tenants") .withTag("flavor", nodeSpec.nodeFlavor) .withTag("state", nodeSpec.nodeState.toString()) .withTag("zone", environment.getZone()) .withTag("parentHostname", environment.getParentHostHostname()); - - nodeSpec.owner.ifPresent(owner -> - scheduleMaker - .withTag("tenantName", owner.tenant) - .withTag("app", owner.application + "." + owner.instance)); - - nodeSpec.membership.ifPresent(membership -> - scheduleMaker - .withTag("clustertype", membership.clusterType) - .withTag("clusterid", membership.clusterId)); - - nodeSpec.vespaVersion.ifPresent(version -> scheduleMaker.withTag("vespaVersion", version)); + nodeSpec.owner.ifPresent(owner -> vespaSchedule + .withTag("tenantName", owner.tenant) + .withTag("app", owner.application + "." + owner.instance)); + nodeSpec.membership.ifPresent(membership -> vespaSchedule + .withTag("clustertype", membership.clusterType) + .withTag("clusterid", membership.clusterId)); + nodeSpec.vespaVersion.ifPresent(version -> vespaSchedule.withTag("vespaVersion", version)); + + Path hostLifeCheckPath = Paths.get("/home/y/libexec/yms/yms_check_host_life"); + SecretAgentScheduleMaker hostLifeSchedule = new SecretAgentScheduleMaker("host-life", 60, hostLifeCheckPath) + .withTag("namespace", "Vespa") + .withTag("role", "tenants") + .withTag("flavor", nodeSpec.nodeFlavor) + .withTag("state", nodeSpec.nodeState.toString()) + .withTag("zone", environment.getZone()) + .withTag("parentHostname", environment.getParentHostHostname()); + nodeSpec.owner.ifPresent(owner -> vespaSchedule + .withTag("tenantName", owner.tenant) + .withTag("app", owner.application + "." + owner.instance) + .withTag("applicationName", owner.application) + .withTag("instanceName", owner.instance) + .withTag("applicationId", owner.tenant + "." + owner.application + "." + owner.instance)); + nodeSpec.membership.ifPresent(membership -> vespaSchedule + .withTag("clustertype", membership.clusterType) + .withTag("clusterid", membership.clusterId)); + nodeSpec.vespaVersion.ifPresent(version -> vespaSchedule.withTag("vespaVersion", version)); try { - scheduleMaker.writeTo(yamasAgentFolder); + vespaSchedule.writeTo(yamasAgentFolder); + hostLifeSchedule.writeTo(yamasAgentFolder); final String[] restartYamasAgent = new String[]{"service", "yamas-agent", "restart"}; docker.executeInContainerAsRoot(containerName, restartYamasAgent); } catch (IOException e) { diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java index baa924811c3..0ac1f5378d4 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java @@ -609,9 +609,6 @@ public class NodeAgentImpl implements NodeAgent { metricReceiver.declareGauge(MetricReceiverWrapper.APPLICATION_DOCKER, dimensions, "node.disk.used").sample(diskUsed)); // TODO END REMOVE - metricReceiver.declareGauge(MetricReceiverWrapper.APPLICATION_HOST_LIFE, dimensions, "uptime").sample(lastCpuMetric.getUptime()); - metricReceiver.declareGauge(MetricReceiverWrapper.APPLICATION_HOST_LIFE, dimensions, "alive").sample(1); - // Push metrics to the metrics proxy in each container - give it maximum 1 seconds to complete try { dockerOperations.executeCommandInContainerAsRoot(containerName, 1L, "rpc_invoke", "-t 1", "tcp/localhost:19091", "setExtraMetrics", buildRPCArgumentFromMetrics()); |