aboutsummaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorHarald Musum <musum@yahooinc.com>2023-03-13 13:34:46 +0100
committerHarald Musum <musum@yahooinc.com>2023-03-13 13:34:46 +0100
commit29480c27385fe2b0375e82628832d0b9693e3c70 (patch)
treea060354149763a310b704a4fe17421d9329da13c /config-model
parent83de4426dda20c34aff131ffa2ba767d17c4b9f4 (diff)
Turn off info logging for some classes
Unimportant logging for external code that we want to avoid in vespa log
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/admin/Admin.java19
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminBuilderBase.java2
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/admin/AdminTestCase.java25
3 files changed, 41 insertions, 5 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/Admin.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/Admin.java
index 317c3646dde..8c039c352f9 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/admin/Admin.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/Admin.java
@@ -24,12 +24,14 @@ import com.yahoo.vespa.model.admin.monitoring.Monitoring;
import com.yahoo.vespa.model.admin.monitoring.builder.Metrics;
import com.yahoo.vespa.model.filedistribution.FileDistributionConfigProducer;
import com.yahoo.vespa.model.filedistribution.FileDistributionConfigProvider;
-
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
+import java.util.Set;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
import static com.yahoo.vespa.model.admin.monitoring.MetricSet.empty;
@@ -41,8 +43,6 @@ import static com.yahoo.vespa.model.admin.monitoring.MetricSet.empty;
*/
public class Admin extends TreeConfigProducer<AnyConfigProducer> implements Serializable {
- private static final long serialVersionUID = 1L;
-
private final boolean isHostedVespa;
private final Monitoring monitoring;
private final List<Configserver> configservers = new ArrayList<>();
@@ -101,6 +101,7 @@ public class Admin extends TreeConfigProducer<AnyConfigProducer> implements Seri
this.multitenant = multitenant;
this.fileDistribution = new FileDistributionConfigProducer(parent);
this.applicationType = applicationType;
+ this.logctlSpecs.addAll(setDefaultLogctlSpecs());
}
public Configserver getConfigserver() { return defaultConfigserver; }
@@ -331,4 +332,16 @@ public class Admin extends TreeConfigProducer<AnyConfigProducer> implements Seri
public ApplicationType getApplicationType() { return applicationType; }
+ private static Set<LogctlSpec> setDefaultLogctlSpecs() {
+ // Turn off info logging for all container services for some classes (unimportant log messages that create noise in vespa log)
+ return Stream.of("configserver", "container", "container-clustercontroller", "logserver-container", "metricsproxy-container").map(
+ service -> List.of(
+ new LogctlSpec(service + ":com.yahoo.vespa.spifly.repackaged.spifly.BaseActivator", "info=off"),
+ new LogctlSpec(service + ":org.eclipse.jetty.server.Server", "info=off"),
+ new LogctlSpec(service + ":org.eclipse.jetty.server.handler.ContextHandler", "info=off"),
+ new LogctlSpec(service + ":org.eclipse.jetty.server.AbstractConnector", "info=off")))
+ .flatMap(List::stream)
+ .collect(Collectors.toSet());
+ }
+
}
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 57113ff794f..69c64c97316 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
@@ -23,9 +23,7 @@ import com.yahoo.vespa.model.admin.monitoring.builder.xml.MetricsBuilder;
import org.w3c.dom.Element;
import java.util.ArrayList;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
import java.util.Optional;
/**
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/admin/AdminTestCase.java b/config-model/src/test/java/com/yahoo/vespa/model/admin/AdminTestCase.java
index d060fdfd3d2..b81576d9c5c 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/admin/AdminTestCase.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/admin/AdminTestCase.java
@@ -17,6 +17,7 @@ import com.yahoo.config.provision.Zone;
import com.yahoo.container.jdisc.config.HealthMonitorConfig;
import com.yahoo.net.HostName;
import com.yahoo.vespa.config.core.StateserverConfig;
+import com.yahoo.vespa.model.LogctlSpec;
import com.yahoo.vespa.model.Service;
import com.yahoo.vespa.model.VespaModel;
import com.yahoo.vespa.model.container.ApplicationContainerCluster;
@@ -24,6 +25,7 @@ import com.yahoo.vespa.model.test.utils.VespaModelCreatorWithFilePkg;
import com.yahoo.vespa.model.test.utils.VespaModelCreatorWithMockPkg;
import org.junit.jupiter.api.Test;
+import java.util.List;
import java.util.Set;
import static com.yahoo.config.model.api.container.ContainerServiceType.METRICS_PROXY_CONTAINER;
@@ -243,4 +245,27 @@ public class AdminTestCase {
assertTrue(configIds.contains("hosts/myhost0/logforwarder"), configIds.toString());
}
+ @Test
+ void testDefaultLogCtlSpecs() {
+ String hosts = "<hosts>"
+ + " <host name=\"myhost0\">"
+ + " <alias>node0</alias>"
+ + " </host>"
+ + "</hosts>";
+
+ String services = "<services>" +
+ " <admin version='2.0'>" +
+ " <adminserver hostalias='node0' />" +
+ " </admin>" +
+ "</services>";
+
+ VespaModel vespaModel = new VespaModelCreatorWithMockPkg(hosts, services).create();
+ List<LogctlSpec> logctlSpecs = vespaModel.getAdmin().getLogctlSpecs();
+ assertEquals(20, logctlSpecs.size()); // Default logctl specs: 4 logctl specs for 5 services => 20
+ assertEquals(1, logctlSpecs
+ .stream()
+ .filter(l -> (l.componentSpec.equals("configserver:com.yahoo.vespa.spifly.repackaged.spifly.BaseActivator")
+ && l.levelsModSpec.equals("info=off"))).count());
+ }
+
}