From 27cb3646c06dc4d9234e95af875cecc4c3851a9c Mon Sep 17 00:00:00 2001 From: Daan Hoogland Date: Mon, 1 Jul 2024 16:15:46 +0200 Subject: [PATCH 1/4] create rotate file on the fly --- .../org/apache/cloudstack/ServerDaemon.java | 27 ++++++++++++++++--- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/client/src/main/java/org/apache/cloudstack/ServerDaemon.java b/client/src/main/java/org/apache/cloudstack/ServerDaemon.java index 196695e1fc6b..26f033bf23a1 100644 --- a/client/src/main/java/org/apache/cloudstack/ServerDaemon.java +++ b/client/src/main/java/org/apache/cloudstack/ServerDaemon.java @@ -18,10 +18,7 @@ // package org.apache.cloudstack; -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.io.InputStream; +import java.io.*; import java.lang.management.ManagementFactory; import java.net.URL; import java.util.Arrays; @@ -333,9 +330,31 @@ private RequestLog createRequestLog() { log.setAppend(true); log.setLogTimeZone("GMT"); log.setLogLatency(true); + createRotateFile(logPath); return log; } + private void createRotateFile(File logPath) { + String rotatefile = "/etc/logrotate/access"; + String fileContents = logPath.getAbsolutePath() + " {\n" + + " copytruncate" + + " daily" + + " rotate 14" + + " compress" + + " missingok" + + " create 0644 cloud cloud" + + "}"; + File rotateConfigFile = new File(rotatefile); + try { + FileWriter fw = new FileWriter(rotateConfigFile); + fw.write(fileContents); + fw.close(); + } catch (IOException e) { + // log but continue without rotate (for now) + LOG.warn("no way to rotate access log, continuing as is"); + } + } + private URL getResource(String aResource) { return Thread.currentThread().getContextClassLoader().getResource(aResource); } From b024ef04a17455b9d8436b2db6969a93530d1b81 Mon Sep 17 00:00:00 2001 From: dahn Date: Mon, 1 Jul 2024 16:19:17 +0200 Subject: [PATCH 2/4] Update client/src/main/java/org/apache/cloudstack/ServerDaemon.java --- client/src/main/java/org/apache/cloudstack/ServerDaemon.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/client/src/main/java/org/apache/cloudstack/ServerDaemon.java b/client/src/main/java/org/apache/cloudstack/ServerDaemon.java index 26f033bf23a1..15c609958d40 100644 --- a/client/src/main/java/org/apache/cloudstack/ServerDaemon.java +++ b/client/src/main/java/org/apache/cloudstack/ServerDaemon.java @@ -18,7 +18,9 @@ // package org.apache.cloudstack; -import java.io.*; +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; import java.lang.management.ManagementFactory; import java.net.URL; import java.util.Arrays; From 18737612f05f0c1c0d03b5f2d1b3dcbcac5baa50 Mon Sep 17 00:00:00 2001 From: Daan Hoogland Date: Mon, 1 Jul 2024 16:41:15 +0200 Subject: [PATCH 3/4] autoimport s*** --- client/src/main/java/org/apache/cloudstack/ServerDaemon.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/client/src/main/java/org/apache/cloudstack/ServerDaemon.java b/client/src/main/java/org/apache/cloudstack/ServerDaemon.java index 15c609958d40..f432261c06d6 100644 --- a/client/src/main/java/org/apache/cloudstack/ServerDaemon.java +++ b/client/src/main/java/org/apache/cloudstack/ServerDaemon.java @@ -19,7 +19,9 @@ package org.apache.cloudstack; import java.io.File; +import java.io.FileInputStream; import java.io.FileWriter; +import java.io.InputStream; import java.io.IOException; import java.lang.management.ManagementFactory; import java.net.URL; From ff27a442900ef046ae16e86d51df91747171b321 Mon Sep 17 00:00:00 2001 From: dahn Date: Mon, 1 Jul 2024 16:58:17 +0200 Subject: [PATCH 4/4] Update client/src/main/java/org/apache/cloudstack/ServerDaemon.java --- client/src/main/java/org/apache/cloudstack/ServerDaemon.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/src/main/java/org/apache/cloudstack/ServerDaemon.java b/client/src/main/java/org/apache/cloudstack/ServerDaemon.java index f432261c06d6..af608891b015 100644 --- a/client/src/main/java/org/apache/cloudstack/ServerDaemon.java +++ b/client/src/main/java/org/apache/cloudstack/ServerDaemon.java @@ -339,7 +339,7 @@ private RequestLog createRequestLog() { } private void createRotateFile(File logPath) { - String rotatefile = "/etc/logrotate/access"; + String rotatefile = "/etc/logrotate.d/access"; String fileContents = logPath.getAbsolutePath() + " {\n" + " copytruncate" + " daily"