Source:
public void start() throws InstantiationException { logger.info("Starting RestServer"); long startupBeginTime = System.currentTimeMillis(); try { reporter.start(); long reporterStartTime = System.currentTimeMillis(); long elapsedTime = reporterStartTime - startupBeginTime; logger.info("JMX reporter start took ms", elapsedTime); restServerMetrics.jmxReporterStartTimeInMs.update(elapsedTime); restResponseHandler.start(); long restResponseHandlerStartTime = System.currentTimeMillis(); elapsedTime = restResponseHandlerStartTime - reporterStartTime; logger.info("Response handler start took ms", elapsedTime); restServerMetrics.restResponseHandlerStartTimeInMs.update(elapsedTime); blobStorageService.start(); long blobStorageServiceStartTime = System.currentTimeMillis(); elapsedTime = blobStorageServiceStartTime - restResponseHandlerStartTime; logger.info("Blob storage service start took ms", elapsedTime); restServerMetrics.blobStorageServiceStartTimeInMs.update(elapsedTime); restRequestHandler.start(); long restRequestHandlerStartTime = System.currentTimeMillis(); elapsedTime = restRequestHandlerStartTime - blobStorageServiceStartTime; logger.info("Request handler start took ms", elapsedTime); restServerMetrics.restRequestHandlerStartTimeInMs.update(elapsedTime); nioServer.start(); elapsedTime = System.currentTimeMillis() - restRequestHandlerStartTime; logger.info("NIO server start took ms", elapsedTime); restServerMetrics.nioServerStartTimeInMs.update(elapsedTime); restServerState.markServiceUp(); logger.info("Service marked as up"); nettyMetrics.start(); logger.info("NettyMetric starts"); } finally { long startupTime = System.currentTimeMillis() - startupBeginTime; logger.info("RestServer start took ms", startupTime); restServerMetrics.restServerStartTimeInMs.update(startupTime); } }

Target:
public void start() throws InstantiationException { logger.info("Starting RestServer"); long startupBeginTime = System.currentTimeMillis(); try { reporter.start(); long reporterStartTime = System.currentTimeMillis(); long elapsedTime = reporterStartTime - startupBeginTime; logger.info("JMX reporter start took ms", elapsedTime); restServerMetrics.jmxReporterStartTimeInMs.update(elapsedTime); restResponseHandler.start(); long restResponseHandlerStartTime = System.currentTimeMillis(); elapsedTime = restResponseHandlerStartTime - reporterStartTime; logger.info("Response handler start took ms", elapsedTime); restServerMetrics.restResponseHandlerStartTimeInMs.update(elapsedTime); blobStorageService.start(); long blobStorageServiceStartTime = System.currentTimeMillis(); elapsedTime = blobStorageServiceStartTime - restResponseHandlerStartTime; logger.info("Blob storage service start took ms", elapsedTime); restServerMetrics.blobStorageServiceStartTimeInMs.update(elapsedTime); restRequestHandler.start(); long restRequestHandlerStartTime = System.currentTimeMillis(); elapsedTime = restRequestHandlerStartTime - blobStorageServiceStartTime; logger.info("Request handler start took ms", elapsedTime); restServerMetrics.restRequestHandlerStartTimeInMs.update(elapsedTime); nioServer.start(); elapsedTime = System.currentTimeMillis() - restRequestHandlerStartTime; logger.info("NIO server start took ms", elapsedTime); restServerMetrics.nioServerStartTimeInMs.update(elapsedTime); if (nettyMetrics != null) { nettyMetrics.start(); logger.info("NettyMetric starts"); } restServerState.markServiceUp(); logger.info("Service marked as up"); } finally { long startupTime = System.currentTimeMillis() - startupBeginTime; logger.info("RestServer start took ms", startupTime); restServerMetrics.restServerStartTimeInMs.update(startupTime); } }