diff options
author | max42 <max42@yandex-team.com> | 2023-06-30 11:13:34 +0300 |
---|---|---|
committer | max42 <max42@yandex-team.com> | 2023-06-30 11:13:34 +0300 |
commit | 3e1899838408bbad47622007aa382bc8a2b01f87 (patch) | |
tree | 0f21c1e6add187ddb6c3ccc048a7d640ce03fb87 /yt/cpp/mapreduce/interface/logging/logger.cpp | |
parent | 5463eb3f5e72a86f858a3d27c886470a724ede34 (diff) | |
download | ydb-3e1899838408bbad47622007aa382bc8a2b01f87.tar.gz |
Revert "YT-19324: move YT provider to ydb/library/yql"
This reverts commit ca272f12fdd0e8d5c3e957fc87939148f1caaf72, reversing
changes made to 49f8acfc8b0b5c0071b804423bcf53fda26c7c12.
Diffstat (limited to 'yt/cpp/mapreduce/interface/logging/logger.cpp')
-rw-r--r-- | yt/cpp/mapreduce/interface/logging/logger.cpp | 188 |
1 files changed, 0 insertions, 188 deletions
diff --git a/yt/cpp/mapreduce/interface/logging/logger.cpp b/yt/cpp/mapreduce/interface/logging/logger.cpp deleted file mode 100644 index bfa56b94f6..0000000000 --- a/yt/cpp/mapreduce/interface/logging/logger.cpp +++ /dev/null @@ -1,188 +0,0 @@ -#include "logger.h" - -#include <util/datetime/base.h> - -#include <util/stream/file.h> -#include <util/stream/format.h> -#include <util/stream/printf.h> -#include <util/stream/str.h> - -#include <util/system/mutex.h> -#include <util/system/rwlock.h> -#include <util/system/thread.h> - -namespace NYT { - -//////////////////////////////////////////////////////////////////////////////// - -static TStringBuf StripFileName(TStringBuf path) { - TStringBuf l, r; - if (path.TryRSplit('/', l, r) || path.TryRSplit('\\', l, r)) { - return r; - } else { - return path; - } -} - -static char GetLogLevelCode(ILogger::ELevel level) { - switch (level) { - case ILogger::FATAL: return 'F'; - case ILogger::ERROR: return 'E'; - case ILogger::INFO: return 'I'; - case ILogger::DEBUG: return 'D'; - } - Y_UNREACHABLE(); -} - -//////////////////////////////////////////////////////////////////////////////// - -class TNullLogger - : public ILogger -{ -public: - void Log(ELevel level, const TSourceLocation& sourceLocation, const char* format, va_list args) override - { - Y_UNUSED(level); - Y_UNUSED(sourceLocation); - Y_UNUSED(format); - Y_UNUSED(args); - } -}; - -//////////////////////////////////////////////////////////////////////////////// - -class TLoggerBase - : public ILogger -{ -public: - TLoggerBase(ELevel cutLevel) - : CutLevel_(cutLevel) - { } - - virtual void OutputLine(const TString& line) = 0; - - void Log(ELevel level, const TSourceLocation& sourceLocation, const char* format, va_list args) override - { - if (level > CutLevel_) { - return; - } - - TStringStream stream; - stream << TInstant::Now().ToStringLocal() - << " " << GetLogLevelCode(level) - << " [" << Hex(TThread::CurrentThreadId(), HF_FULL) << "] "; - Printf(stream, format, args); - stream << " - " << StripFileName(sourceLocation.File) << ':' << sourceLocation.Line << Endl; - - TGuard<TMutex> guard(Mutex_); - OutputLine(stream.Str()); - } - -private: - ELevel CutLevel_; - TMutex Mutex_; -}; - -//////////////////////////////////////////////////////////////////////////////// - -class TStdErrLogger - : public TLoggerBase -{ -public: - TStdErrLogger(ELevel cutLevel) - : TLoggerBase(cutLevel) - { } - - void OutputLine(const TString& line) override - { - Cerr << line; - } -}; - -ILoggerPtr CreateStdErrLogger(ILogger::ELevel cutLevel) -{ - return new TStdErrLogger(cutLevel); -} - -//////////////////////////////////////////////////////////////////////////////// - -class TFileLogger - : public TLoggerBase -{ -public: - TFileLogger(ELevel cutLevel, const TString& path, bool append) - : TLoggerBase(cutLevel) - , Stream_(TFile(path, OpenAlways | WrOnly | Seq | (append ? ForAppend : EOpenMode()))) - { } - - void OutputLine(const TString& line) override - { - Stream_ << line; - } - -private: - TUnbufferedFileOutput Stream_; -}; - -ILoggerPtr CreateFileLogger(ILogger::ELevel cutLevel, const TString& path, bool append) -{ - return new TFileLogger(cutLevel, path, append); -} -//////////////////////////////////////////////////////////////////////////////// - -class TBufferedFileLogger - : public TLoggerBase -{ -public: - TBufferedFileLogger(ELevel cutLevel, const TString& path, bool append) - : TLoggerBase(cutLevel) - , Stream_(TFile(path, OpenAlways | WrOnly | Seq | (append ? ForAppend : EOpenMode()))) - { } - - void OutputLine(const TString& line) override - { - Stream_ << line; - } - -private: - TFileOutput Stream_; -}; - -ILoggerPtr CreateBufferedFileLogger(ILogger::ELevel cutLevel, const TString& path, bool append) -{ - return new TBufferedFileLogger(cutLevel, path, append); -} - -//////////////////////////////////////////////////////////////////////////////// - -static TRWMutex LoggerMutex; -static ILoggerPtr Logger; - -struct TLoggerInitializer -{ - TLoggerInitializer() - { - Logger = new TNullLogger; - } -} LoggerInitializer; - -void SetLogger(ILoggerPtr logger) -{ - auto guard = TWriteGuard(LoggerMutex); - if (logger) { - Logger = logger; - } else { - Logger = new TNullLogger; - } -} - -ILoggerPtr GetLogger() -{ - auto guard = TReadGuard(LoggerMutex); - return Logger; -} - -//////////////////////////////////////////////////////////////////////////////// - -} - |