diff options
Diffstat (limited to 'src/mongo/db/mongod_main.cpp')
-rw-r--r-- | src/mongo/db/mongod_main.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/mongo/db/mongod_main.cpp b/src/mongo/db/mongod_main.cpp index 3cb467f8a7b..dff574670bb 100644 --- a/src/mongo/db/mongod_main.cpp +++ b/src/mongo/db/mongod_main.cpp @@ -598,7 +598,8 @@ ExitCode _initAndListen(ServiceContext* serviceContext, int listenPort) { } // Start up health log writer thread. - HealthLog::get(startupOpCtx.get()).startup(); + HealthLogInterface::set(serviceContext, std::make_unique<HealthLog>()); + HealthLogInterface::get(startupOpCtx.get())->startup(); auto const globalAuthzManager = AuthorizationManager::get(serviceContext); uassertStatusOK(globalAuthzManager->initialize(startupOpCtx.get())); @@ -1513,8 +1514,10 @@ void shutdownTask(const ShutdownTaskArgs& shutdownArgs) { LOGV2(4784925, "Shutting down free monitoring"); stopFreeMonitoring(); - LOGV2(4784927, "Shutting down the HealthLog"); - HealthLog::get(serviceContext).shutdown(); + if (auto* healthLog = HealthLogInterface::get(serviceContext)) { + LOGV2(4784927, "Shutting down the HealthLog"); + healthLog->shutdown(); + } LOGV2(4784928, "Shutting down the TTL monitor"); shutdownTTLMonitor(serviceContext); |