ApplicationImpl::~ApplicationImpl()
{
    LOG(INFO) << "Application destructing";
    reportCfgMetrics();
    gracefulStop();
    joinAllThreads();
    LOG(INFO) << "Application destroyed";
}
ApplicationImpl::~ApplicationImpl()
{
    LOG(INFO) << "Application destructing";
    if (mProcessManager)
    {
        mProcessManager->shutdown();
    }
    reportCfgMetrics();
    shutdownMainIOService();
    joinAllThreads();
    LOG(INFO) << "Application destroyed";
}