diff options
author | Billy Donahue <billy.donahue@mongodb.com> | 2020-03-22 22:32:49 -0400 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2020-03-23 13:31:33 +0000 |
commit | 2e58eb2e8a79c4fb4d12465616fa89ab498eb05c (patch) | |
tree | 73bba1b90f30d2446c9c6390f3215de501669318 /src/mongo/db/log_process_details.cpp | |
parent | 5846d4b66cf0adb154dbe89c696a750bc0a1082c (diff) | |
download | mongo-2e58eb2e8a79c4fb4d12465616fa89ab498eb05c.tar.gz |
SERVER-46765 fix '--version' & '--sysinfo', which use kPlain logging
This reverts commit 79a8452b2a813b796059e5eab6c18f685283ce08.
with new spot fix: printCommandLineOpts when sending to log
Diffstat (limited to 'src/mongo/db/log_process_details.cpp')
-rw-r--r-- | src/mongo/db/log_process_details.cpp | 34 |
1 files changed, 24 insertions, 10 deletions
diff --git a/src/mongo/db/log_process_details.cpp b/src/mongo/db/log_process_details.cpp index 9d43247991a..f63401df6fd 100644 --- a/src/mongo/db/log_process_details.cpp +++ b/src/mongo/db/log_process_details.cpp @@ -33,6 +33,11 @@ #include "mongo/db/log_process_details.h" +#include <ostream> + +#include "mongo/bson/bsonobj.h" +#include "mongo/bson/bsonobjbuilder.h" +#include "mongo/bson/json.h" #include "mongo/db/repl/repl_set_config.h" #include "mongo/db/repl/replication_coordinator.h" #include "mongo/db/server_options.h" @@ -44,26 +49,35 @@ namespace mongo { +namespace { + bool is32bit() { return (sizeof(int*) == 4); } -void logProcessDetails() { - auto&& vii = VersionInfoInterface::instance(); - vii.logBuildInfo(); - - ProcessInfo p; - LOGV2( - 51765, "Operating system", "name"_attr = p.getOsName(), "version"_attr = p.getOsVersion()); +} // namespace +void logProcessDetails(std::ostream* os) { + auto&& vii = VersionInfoInterface::instance(); if (ProcessInfo::getMemSizeMB() < ProcessInfo::getSystemMemSizeMB()) { LOGV2_WARNING(20720, "Available memory is less than system memory", "availableMemSizeMB"_attr = ProcessInfo::getMemSizeMB(), "systemMemSizeMB"_attr = ProcessInfo::getSystemMemSizeMB()); } - - printCommandLineOpts(); + auto osInfo = BSONObjBuilder() + .append("name", ProcessInfo::getOsName()) + .append("version", ProcessInfo::getOsVersion()) + .obj(); + vii.logBuildInfo(os); + if (os) { + *os << format(FMT_STRING("Operating System: {}"), + tojson(osInfo, ExtendedRelaxedV2_0_0, true)) + << std::endl; + } else { + LOGV2(51765, "Operating System", "os"_attr = osInfo); + } + printCommandLineOpts(os); } void logProcessDetailsForLogRotate(ServiceContext* serviceContext) { @@ -89,7 +103,7 @@ void logProcessDetailsForLogRotate(ServiceContext* serviceContext) { } } - logProcessDetails(); + logProcessDetails(nullptr); } } // namespace mongo |