|
21 | 21 | import io.micrometer.prometheus.PrometheusMeterRegistry; |
22 | 22 | import org.apache.commons.cli.Option; |
23 | 23 | import org.apache.commons.cli.Options; |
| 24 | +import org.eclipse.jetty.server.Connector; |
24 | 25 | import org.eclipse.jetty.server.Request; |
25 | 26 | import org.eclipse.jetty.server.Server; |
| 27 | +import org.eclipse.jetty.server.ServerConnector; |
26 | 28 | import org.eclipse.jetty.server.handler.AbstractHandler; |
27 | 29 | import org.eclipse.jetty.server.handler.ContextHandler; |
| 30 | +import org.eclipse.jetty.util.thread.QueuedThreadPool; |
28 | 31 |
|
29 | 32 | import javax.servlet.http.HttpServletRequest; |
30 | 33 | import javax.servlet.http.HttpServletResponse; |
@@ -55,8 +58,14 @@ public void configure(CommandLineProxy cmd, CompositeMeterRegistry meterRegistry |
55 | 58 | int prometheusHttpEndpointPort = intArg(cmd, "mpp", 8080); |
56 | 59 | String prometheusHttpEndpoint = strArg(cmd, "mpe", "metrics"); |
57 | 60 | prometheusHttpEndpoint = prometheusHttpEndpoint.startsWith("/") ? prometheusHttpEndpoint : "/" + prometheusHttpEndpoint; |
58 | | - // FIXME configure Jetty (threads, etc) |
59 | | - server = new Server(prometheusHttpEndpointPort); |
| 61 | + QueuedThreadPool threadPool = new QueuedThreadPool(); |
| 62 | + // difference between those 2 should be high enough to avoid a warning |
| 63 | + threadPool.setMinThreads(2); |
| 64 | + threadPool.setMaxThreads(12); |
| 65 | + server = new Server(threadPool); |
| 66 | + ServerConnector connector = new ServerConnector(server); |
| 67 | + connector.setPort(prometheusHttpEndpointPort); |
| 68 | + server.setConnectors(new Connector[] { connector }); |
60 | 69 |
|
61 | 70 | ContextHandler context = new ContextHandler(); |
62 | 71 | context.setContextPath(prometheusHttpEndpoint); |
|
0 commit comments