MCPcopy Create free account
hub / github.com/ByConity/ByConity / addDefaultHandlersFactory

Function addDefaultHandlersFactory

src/Server/HTTPHandlerFactory.cpp:196–215  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

194}
195
196void addDefaultHandlersFactory(
197 HTTPRequestHandlerFactoryMain & factory, IServer & server, AsynchronousMetrics & async_metrics, ContextMutablePtr context)
198{
199 addCommonDefaultHandlersFactory(factory, server);
200
201 auto query_handler = std::make_shared<HandlingRuleHTTPHandlerFactory<DynamicQueryHandler>>(server, "query");
202 query_handler->allowPostAndGetParamsRequest();
203 factory.addHandler(query_handler);
204
205 /// We check that prometheus handler will be served on current (default) port.
206 /// Otherwise it will be created separately, see createHandlerFactory(...).
207 if (server.config().has("prometheus") && server.config().getInt("prometheus.port", 0) == 0)
208 {
209 auto prometheus_handler = std::make_shared<HandlingRuleHTTPHandlerFactory<PrometheusRequestHandler>>(
210 server, std::make_shared<ServerPrometheusMetricsWriter>(server.config(), context, "prometheus", async_metrics));
211 prometheus_handler->attachStrictPath(server.config().getString("prometheus.endpoint", "/metrics"));
212 prometheus_handler->allowGetAndHeadRequest();
213 factory.addHandler(prometheus_handler);
214 }
215}
216
217}

Callers 2

createHTTPHandlerFactoryFunction · 0.85

Calls 9

attachStrictPathMethod · 0.80
addHandlerMethod · 0.45
hasMethod · 0.45
configMethod · 0.45
getIntMethod · 0.45
getStringMethod · 0.45

Tested by

no test coverage detected