aboutsummaryrefslogtreecommitdiffstats
path: root/container-core/src/main/java/com/yahoo/container/logging
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2021-04-16 23:33:00 +0200
committerHenning Baldersheim <balder@yahoo-inc.com>2021-04-16 23:33:00 +0200
commit6930d2112dd39b8362df0c9ade7800f3bd3bebda (patch)
tree936bae9d7e1071d4ed9646b7f2e3ccb5860ecc04 /container-core/src/main/java/com/yahoo/container/logging
parent228bbd8020b1922d53ef21f7ce5ae59d142f39c4 (diff)
- Use 256k buffer for connection log as it is low volume.
- Used 256k buffer accesslog, but 4m for application containers.
Diffstat (limited to 'container-core/src/main/java/com/yahoo/container/logging')
-rw-r--r--container-core/src/main/java/com/yahoo/container/logging/AccessLogHandler.java2
-rw-r--r--container-core/src/main/java/com/yahoo/container/logging/ConnectionLogHandler.java4
-rw-r--r--container-core/src/main/java/com/yahoo/container/logging/FileConnectionLog.java2
-rw-r--r--container-core/src/main/java/com/yahoo/container/logging/LogFileHandler.java23
4 files changed, 15 insertions, 16 deletions
diff --git a/container-core/src/main/java/com/yahoo/container/logging/AccessLogHandler.java b/container-core/src/main/java/com/yahoo/container/logging/AccessLogHandler.java
index 89aab1513ee..f14479899f5 100644
--- a/container-core/src/main/java/com/yahoo/container/logging/AccessLogHandler.java
+++ b/container-core/src/main/java/com/yahoo/container/logging/AccessLogHandler.java
@@ -12,7 +12,7 @@ class AccessLogHandler {
AccessLogHandler(AccessLogConfig.FileHandler config, LogWriter<RequestLogEntry> logWriter) {
logFileHandler = new LogFileHandler<>(
- toCompression(config), config.pattern(), config.rotation(),
+ toCompression(config), config.bufferSize(), config.pattern(), config.rotation(),
config.symlink(), config.queueSize(), "request-logger", logWriter);
}
diff --git a/container-core/src/main/java/com/yahoo/container/logging/ConnectionLogHandler.java b/container-core/src/main/java/com/yahoo/container/logging/ConnectionLogHandler.java
index 7a0e8aca95e..7b130884667 100644
--- a/container-core/src/main/java/com/yahoo/container/logging/ConnectionLogHandler.java
+++ b/container-core/src/main/java/com/yahoo/container/logging/ConnectionLogHandler.java
@@ -8,9 +8,11 @@ package com.yahoo.container.logging;
class ConnectionLogHandler {
private final LogFileHandler<ConnectionLogEntry> logFileHandler;
- public ConnectionLogHandler(String logDirectoryName, String clusterName, int queueSize, LogWriter<ConnectionLogEntry> logWriter) {
+ public ConnectionLogHandler(String logDirectoryName, int bufferSize, String clusterName,
+ int queueSize, LogWriter<ConnectionLogEntry> logWriter) {
logFileHandler = new LogFileHandler<>(
LogFileHandler.Compression.ZSTD,
+ bufferSize,
String.format("logs/vespa/%s/ConnectionLog.%s.%s", logDirectoryName, clusterName, "%Y%m%d%H%M%S"),
"0 60 ...",
String.format("ConnectionLog.%s", clusterName),
diff --git a/container-core/src/main/java/com/yahoo/container/logging/FileConnectionLog.java b/container-core/src/main/java/com/yahoo/container/logging/FileConnectionLog.java
index 7432c313286..749426d3da9 100644
--- a/container-core/src/main/java/com/yahoo/container/logging/FileConnectionLog.java
+++ b/container-core/src/main/java/com/yahoo/container/logging/FileConnectionLog.java
@@ -14,7 +14,7 @@ public class FileConnectionLog extends AbstractComponent implements ConnectionLo
@Inject
public FileConnectionLog(ConnectionLogConfig config) {
- logHandler = new ConnectionLogHandler(config.logDirectoryName(), config.cluster(), config.queueSize(), new JsonConnectionLogWriter());
+ logHandler = new ConnectionLogHandler(config.logDirectoryName(), config.bufferSize(), config.cluster(), config.queueSize(), new JsonConnectionLogWriter());
}
@Override
diff --git a/container-core/src/main/java/com/yahoo/container/logging/LogFileHandler.java b/container-core/src/main/java/com/yahoo/container/logging/LogFileHandler.java
index 0f2a9e42eb8..85c211c0e3a 100644
--- a/container-core/src/main/java/com/yahoo/container/logging/LogFileHandler.java
+++ b/container-core/src/main/java/com/yahoo/container/logging/LogFileHandler.java
@@ -47,21 +47,15 @@ class LogFileHandler <LOGTYPE> {
@FunctionalInterface private interface Pollable<T> { Operation<T> poll() throws InterruptedException; }
- LogFileHandler(Compression compression, String filePattern, String rotationTimes, String symlinkName, int queueSize,
- String threadName, LogWriter<LOGTYPE> logWriter) {
- this(compression, filePattern, calcTimesMinutes(rotationTimes), symlinkName, queueSize, threadName, logWriter);
+ LogFileHandler(Compression compression, int bufferSize, String filePattern, String rotationTimes, String symlinkName,
+ int queueSize, String threadName, LogWriter<LOGTYPE> logWriter) {
+ this(compression, bufferSize, filePattern, calcTimesMinutes(rotationTimes), symlinkName, queueSize, threadName, logWriter);
}
- LogFileHandler(
- Compression compression,
- String filePattern,
- long[] rotationTimes,
- String symlinkName,
- int queueSize,
- String threadName,
- LogWriter<LOGTYPE> logWriter) {
+ LogFileHandler(Compression compression, int bufferSize, String filePattern, long[] rotationTimes, String symlinkName,
+ int queueSize, String threadName, LogWriter<LOGTYPE> logWriter) {
this.logQueue = new LinkedBlockingQueue<>(queueSize);
- this.logThread = new LogThread<>(logWriter, filePattern, compression, rotationTimes, symlinkName, threadName, this::poll);
+ this.logThread = new LogThread<>(logWriter, filePattern, compression, bufferSize, rotationTimes, symlinkName, threadName, this::poll);
this.logThread.start();
}
@@ -197,6 +191,7 @@ class LogFileHandler <LOGTYPE> {
private volatile String fileName;
private final LogWriter<LOGTYPE> logWriter;
private final Compression compression;
+ private final int bufferSize;
private final long[] rotationTimes;
private final String symlinkName;
private final ExecutorService executor = createCompressionTaskExecutor();
@@ -206,6 +201,7 @@ class LogFileHandler <LOGTYPE> {
LogThread(LogWriter<LOGTYPE> logWriter,
String filePattern,
Compression compression,
+ int bufferSize,
long[] rotationTimes,
String symlinkName,
String threadName,
@@ -215,6 +211,7 @@ class LogFileHandler <LOGTYPE> {
this.logWriter = logWriter;
this.filePattern = filePattern;
this.compression = compression;
+ this.bufferSize = bufferSize;
this.rotationTimes = rotationTimes;
this.symlinkName = (symlinkName != null && !symlinkName.isBlank()) ? symlinkName : null;
this.operationProvider = operationProvider;
@@ -360,7 +357,7 @@ class LogFileHandler <LOGTYPE> {
internalClose();
try {
checkAndCreateDir(fileName);
- fileOutput = new PageCacheFriendlyFileOutputStream(nativeIO, Paths.get(fileName), 4 * 1024 * 1024);
+ fileOutput = new PageCacheFriendlyFileOutputStream(nativeIO, Paths.get(fileName), bufferSize);
LogFileDb.nowLoggingTo(fileName);
} catch (IOException e) {
throw new RuntimeException("Couldn't open log file '" + fileName + "'", e);