/
githubmirror
/
nbs
Обзор
Документация
Войти
/
githubmirror
/
nbs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
library/cpp/logger/backend_creator.cpp
45 строк
1 KB
qkrorlqr
Initial NBS OpenSource export
28 апр 2023, 21:54
28 апр 2023, 21:54
783a858
Код
Авторство
О чём код?
#include "backend_creator.h" #include "stream.h" #include "uninitialized_creator.h" #include <util/system/yassert.h> #include <util/stream/debug.h> #include <util/stream/output.h> THolder<TLogBackend> ILogBackendCreator::CreateLogBackend() const { try { return DoCreateLogBackend(); } catch(...) { Cdbg << "Warning: " << CurrentExceptionMessage() << ". Use stderr instead." << Endl; } return MakeHolder<TStreamLogBackend>(&Cerr); } bool ILogBackendCreator::Init(const IInitContext& /*ctx*/) { return true; } NJson::TJsonValue ILogBackendCreator::AsJson() const { NJson::TJsonValue json; ToJson(json); return json; } THolder<ILogBackendCreator> ILogBackendCreator::Create(const IInitContext& ctx) { auto res = MakeHolder<TLogBackendCreatorUninitialized>(); if(!res->Init(ctx)) { Cdbg << "Cannot init log backend creator"; return nullptr; } return res; } TLogBackendCreatorBase::TLogBackendCreatorBase(const TString& type) : Type(type) {} void TLogBackendCreatorBase::ToJson(NJson::TJsonValue& value) const { value["LoggerType"] = Type; DoToJson(value); }