blueflood-http/src/main/java/com/rackspacecloud/blueflood/inputs/handlers/HttpMetricsIngestionServer.java
public void startServer() throws InterruptedException {

        RouteMatcher router = new RouteMatcher();
        router.get("/v1.0", new DefaultHandler());
        router.post("/v1.0/multitenant/experimental/metrics",
                new HttpMultitenantMetricsIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));
        router.post("/v1.0/:tenantId/experimental/metrics",
                new HttpMetricsIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));
        router.post("/v1.0/:tenantId/experimental/metrics/statsd",
                new HttpAggregatedIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));

        router.get("/v2.0", new DefaultHandler());
        router.post("/v2.0/:tenantId/ingest/multi",
                new HttpMultitenantMetricsIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));
        router.post("/v2.0/:tenantId/ingest",
                new HttpMetricsIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));
        router.post("/v2.0/:tenantId/ingest/aggregated",
                new HttpAggregatedIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));
        router.post("/v2.0/:tenantId/ingest/aggregated/multi",
                new HttpAggregatedMultiIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));
        router.post("/v2.0/:tenantId/events", getHttpEventsIngestionHandler());
        final RouteMatcher finalRouter = router;

        log.info("Starting metrics listener HTTP server on port {}", httpIngestPort);
        ServerBootstrap server = new ServerBootstrap();
        server.group(acceptorGroup, workerGroup)
                .channel(NioServerSocketChannel.class)
                .childHandler(new ChannelInitializer<SocketChannel>() {
                    @Override
                    public void initChannel(SocketChannel channel) throws Exception {
                        setupPipeline(channel, finalRouter);
                    }
                });

        Channel channel = server.bind(new InetSocketAddress(httpIngestHost, httpIngestPort)).sync().channel();
        allOpenChannels.add(channel);

        //register the tracker MBean for JMX/jolokia
        log.info("Registering tracker service");
        Tracker.getInstance().register();

        log.info("Token search improvements enabled: " + EXP_TOKEN_SEARCH_IMPROVEMENTS);
    }
public void startServer() throws InterruptedException {

        RouteMatcher router = new RouteMatcher();
        router.get("/v1.0", new DefaultHandler());
        router.post("/v1.0/multitenant/experimental/metrics",
                new HttpMultitenantMetricsIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));
        router.post("/v1.0/:tenantId/experimental/metrics",
                new HttpMetricsIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));
        router.post("/v1.0/:tenantId/experimental/metrics/statsd",
                new HttpAggregatedIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));

        router.get("/v2.0", new DefaultHandler());
        router.post("/v2.0/:tenantId/ingest/multi",
                new HttpMultitenantMetricsIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));
        router.post("/v2.0/:tenantId/ingest",
                new HttpMetricsIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));
        router.post("/v2.0/:tenantId/ingest/aggregated",
                new HttpAggregatedIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));
        router.post("/v2.0/:tenantId/ingest/aggregated/multi",
                new HttpAggregatedMultiIngestionHandler(processor, timeout, ENABLE_PER_TENANT_METRICS));
        router.post("/v2.0/:tenantId/events", getHttpEventsIngestionHandler());
        final RouteMatcher finalRouter = router;

        log.info("Starting metrics listener HTTP server on port {}", httpIngestPort);
        ServerBootstrap server = new ServerBootstrap();
        server.group(acceptorGroup, workerGroup)
                .channel(NioServerSocketChannel.class)
                .childHandler(new ChannelInitializer<SocketChannel>() {
                    @Override
                    public void initChannel(SocketChannel channel) throws Exception {
                        setupPipeline(channel, finalRouter);
                    }
                });

        Channel channel = server.bind(new InetSocketAddress(httpIngestHost, httpIngestPort)).sync().channel();
        allOpenChannels.add(channel);

        //register the tracker MBean for JMX/jolokia
        log.info("Registering tracker service");
        Tracker.getInstance().register();

        log.info("Token search improvements enabled: " + EXP_TOKEN_SEARCH_IMPROVEMENTS);
    }
Starts the Ingest server

@throws InterruptedException