Просмотр исходного кода

Fix logger being improperly initialized on windows abi

\[nodiff:caesar\]
2e1773404f3f72a7cff5f37aa2a55cd8ed3022d6
arkady-e1ppa 6 месяцев назад
Родитель
Сommit
cb84c4f96c

+ 2 - 1
yt/yt/client/logging/dynamic_table_log_writer.cpp

@@ -379,10 +379,11 @@ public:
         ILogWriterHost* /*host*/) noexcept override
     {
         auto config = ParseConfig(configNode);
+        auto eventProvider = CreateDefaultSystemLogEventProvider(config);
         return New<TDynamicTableLogWriter>(
             ClientHolder_,
             std::move(formatter),
-            CreateDefaultSystemLogEventProvider(config),
+            std::move(eventProvider),
             std::move(config),
             std::move(name),
             WriteQueue_->GetInvoker());

+ 2 - 1
yt/yt/core/logging/file_log_writer.cpp

@@ -339,9 +339,10 @@ public:
         ILogWriterHost* host) noexcept override
     {
         auto config = ParseConfig(configNode);
+        auto eventProvider = CreateDefaultSystemLogEventProvider(config);
         return CreateFileLogWriter(
             std::move(formatter),
-            CreateDefaultSystemLogEventProvider(config),
+            std::move(eventProvider),
             std::move(name),
             std::move(config),
             host);

+ 2 - 1
yt/yt/core/logging/stream_log_writer.cpp

@@ -90,9 +90,10 @@ public:
         ILogWriterHost* /*host*/) noexcept override
     {
         auto config = ParseConfig(configNode);
+        auto eventProvider = CreateDefaultSystemLogEventProvider(config);
         return CreateStderrLogWriter(
             std::move(formatter),
-            CreateDefaultSystemLogEventProvider(config),
+            std::move(eventProvider),
             std::move(name),
             std::move(config));
     }

+ 2 - 1
yt/yt/core/logging/unittests/logging_ut.cpp

@@ -373,9 +373,10 @@ TEST_F(TLoggingTest, StreamWriter)
 {
     TStringStream stringOutput;
     auto config = New<TLogWriterConfig>();
+    auto eventProvider = CreateDefaultSystemLogEventProvider(config);
     auto writer = CreateStreamLogWriter(
         std::make_unique<TPlainTextLogFormatter>(),
-        CreateDefaultSystemLogEventProvider(config),
+        std::move(eventProvider),
         "test_writer",
         std::move(config),
         &stringOutput);