Simply record the time from entering `main` to start listening sockets.
dns_cache_updater.reset();
            if (current_connections)
            {
                
                
                
                
                
                dumpCoverageReportIfPossible();
                LOG_INFO(log, "Will shutdown forcefully.");
                safeExit(0);
            }
        });
        std::vector<std::unique_ptr<MetricsTransmitter>> metrics_transmitters;
        for (const auto & graphite_key : DB::getMultipleKeysFromConfig(config(), "", "graphite"))
        {
            metrics_transmitters.emplace_back(std::make_unique<MetricsTransmitter>(
                global_context->getConfigRef(), graphite_key, async_metrics));
        }
        waitForTerminationRequest();
    }
    return Application::EXIT_OK;
}
catch (...)
{
    
    tryLogCurrentException("Application");
    throw;
}
std::unique_ptr<TCPProtocolStackFactory> Server::buildProtocolStackFromConfig(