diff options
author | Valerij Fredriksen <freva@users.noreply.github.com> | 2018-03-12 16:30:13 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-03-12 16:30:13 +0100 |
commit | 15e35752807d5d1fadb638895405079574107458 (patch) | |
tree | 587a3dcf1b5a9ec228e73ce6162f01848fc6d6bd /node-admin | |
parent | 7b9cf1820056d161ce761d0c040f7ceb21728f13 (diff) | |
parent | 90832806feb086671dcb9a3d59922a84254dfd83 (diff) |
Merge pull request #5293 from vespa-engine/freva/write-secret-agent-config
Write secret-agent config
Diffstat (limited to 'node-admin')
2 files changed, 31 insertions, 0 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java index fb31a7e5571..26a2d10f229 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java @@ -359,6 +359,7 @@ public class DockerOperationsImpl implements DockerOperations { */ private static Map<Path, Boolean> getDirectoriesToMount(Environment environment) { final Map<Path, Boolean> directoriesToMount = new HashMap<>(); + directoriesToMount.put(Paths.get("/var/log/secret-agent"), false); directoriesToMount.put(Paths.get("/etc/yamas-agent"), true); directoriesToMount.put(Paths.get("/etc/filebeat"), true); directoriesToMount.put(environment.pathInNodeUnderVespaHome("logs/daemontools_y"), false); 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 a09dea69a1c..72d488e361f 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 @@ -98,6 +98,7 @@ public class StorageMaintainer { vespaSchedule.writeTo(yamasAgentFolder); hostLifeSchedule.writeTo(yamasAgentFolder); final String[] restartYamasAgent = new String[]{"service", "yamas-agent", "restart"}; + writeSecretAgentConfig(containerName); dockerOperations.executeCommandInContainerAsRoot(containerName, restartYamasAgent); } catch (IOException e) { throw new RuntimeException("Failed to write secret-agent schedules for " + containerName, e); @@ -430,4 +431,33 @@ public class StorageMaintainer { nextHandleOldCoredumpsAt = Instant.EPOCH; } } + + private void writeSecretAgentConfig(ContainerName containerName) { + String config = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n" + + "<log4j:configuration xmlns:log4j=\"http://jakarta.apache.org/log4j/\">\n" + + " <appender name=\"AppLog\" class=\"org.apache.log4j.rolling.RollingFileAppender\">\n" + + " <param name=\"Threshold\" value=\"Debug\" />\n" + + " <rollingPolicy class=\"org.apache.log4j.rolling.FixedWindowRollingPolicy\">\n" + + " <param name=\"FileNamePattern\" value=\"/var/log/secret-agent/collector-writer.%i\"/>\n" + + " <param name=\"MinIndex\" value=\"0\"/>\n" + + " <param name=\"MaxIndex\" value=\"100\"/>\n" + + " </rollingPolicy>\n" + + " <triggeringPolicy class=\"org.apache.log4j.rolling.SizeBasedTriggeringPolicy\">\n" + + " <param name=\"maxFileSize\" value=\"10MB\"/>\n" + + " </triggeringPolicy>\n" + + " <layout class=\"org.apache.log4j.PatternLayout\">\n" + + " <param name=\"ConversionPattern\" value=\"%d %-5p [%c] - %m%n\" />\n" + + " </layout>\n" + + " </appender>\n" + + "\n" + + " <root>\n" + + " <priority value=\"all\" />\n" + + " <appender-ref ref=\"AppLog\" />\n" + + " </root>\n" + + "</log4j:configuration>"; + + Path configPath = Paths.get("/etc/secret-agent/log4cxx.collector-writer.xml"); + String writeConfigCommand = String.format("echo '%s' > %s", config, configPath); + dockerOperations.executeCommandInContainerAsRoot(containerName, "/bin/sh", "-c", writeConfigCommand); + } } |