summaryrefslogtreecommitdiffstats
path: root/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/JettyHttpServer.java
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@yahooinc.com>2023-01-23 15:46:12 +0100
committerBjørn Christian Seime <bjorncs@yahooinc.com>2023-01-23 15:46:12 +0100
commit8847d9b4eef2cd159febd04cad3ebc31cc005da6 (patch)
tree74612eb3e3913095d1bc314ec38b5882402a7c21 /container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/JettyHttpServer.java
parentd485fdef78704f15fbd0f988a639622ed73356c6 (diff)
Implement response metric aggregator as a HttpChannel.Listener
Ensure that response metrics are incremented for error responses produced by Jetty's HTTP parser.
Diffstat (limited to 'container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/JettyHttpServer.java')
-rw-r--r--container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/JettyHttpServer.java13
1 files changed, 4 insertions, 9 deletions
diff --git a/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/JettyHttpServer.java b/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/JettyHttpServer.java
index 46fbc158f0a..3ebb65e7979 100644
--- a/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/JettyHttpServer.java
+++ b/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/JettyHttpServer.java
@@ -79,6 +79,7 @@ public class JettyHttpServer extends AbstractServerProvider {
server.addConnector(connectorFactory.createConnector(metric, server, connectionLogger, connectionMetricAggregator));
listenedPorts.add(connectorConfig.listenPort());
}
+ server.addBeanToAllConnectors(new ResponseMetricAggregator(serverConfig.metric()));
JDiscContext jDiscContext = new JDiscContext(filterBindings, container, janitor, metric, serverConfig);
@@ -86,7 +87,7 @@ public class JettyHttpServer extends AbstractServerProvider {
List<JDiscServerConnector> connectors = Arrays.stream(server.getConnectors())
.map(JDiscServerConnector.class::cast)
.toList();
- server.setHandler(createRootHandler(serverConfig, connectors, jdiscServlet));
+ server.setHandler(createRootHandler(connectors, jdiscServlet));
this.metricsReporter = new ServerMetricReporter(metric, server);
}
@@ -117,8 +118,7 @@ public class JettyHttpServer extends AbstractServerProvider {
}
}
- private Handler createRootHandler(
- ServerConfig serverCfg, List<JDiscServerConnector> connectors, ServletHolder jdiscServlet) {
+ private Handler createRootHandler(List<JDiscServerConnector> connectors, ServletHolder jdiscServlet) {
HandlerCollection perConnectorHandlers = new ContextHandlerCollection();
for (JDiscServerConnector connector : connectors) {
ConnectorConfig connectorCfg = connector.connectorConfig();
@@ -136,8 +136,7 @@ public class JettyHttpServer extends AbstractServerProvider {
perConnectorHandlers.addHandler(connectorRoot);
}
StatisticsHandler root = newGenericStatisticsHandler();
- addChainToRoot(root, List.of(
- newResponseStatisticsHandler(serverCfg), newGzipHandler(), perConnectorHandlers));
+ addChainToRoot(root, List.of(newGzipHandler(), perConnectorHandlers));
return root;
}
@@ -228,10 +227,6 @@ public class JettyHttpServer extends AbstractServerProvider {
return new TlsClientAuthenticationEnforcer(cfg.tlsClientAuthEnforcer());
}
- private static HttpResponseStatisticsCollector newResponseStatisticsHandler(ServerConfig cfg) {
- return new HttpResponseStatisticsCollector(cfg.metric());
- }
-
private static StatisticsHandler newGenericStatisticsHandler() {
StatisticsHandler statisticsHandler = new StatisticsHandler();
statisticsHandler.statsReset();