/
lasersquad
/
LogEngine2
Обзор
Документация
Войти
/
lasersquad
/
LogEngine2
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
TO_DO.txt
70 строк
3 KB
lasersquad0
.
04 авг 2026, 10:37
04 авг 2026, 10:37
425e087
Код
Авторство
О чём код?
TODO ---- This file contains an imcomplete list of things to be done, not necessarily ordered by importance or urgence. * THash2 - think whether we need to specify storage class type for I1 parameter (like it is done for THashBase) * Make THArrayStringFix as a template THArrayStringFix<64> with parameter - size in bytes. * implement stopwatch class that works like this spdlog::stopwatch sw; spdlog::debug("Elapsed {}", sw); spdlog::debug("Elapsed {:.3}", sw); * [DONE] Add tests for threadsafety parameter in .lfg file * [FIXED] Rotating logger should preserve filename extension when creating timestamp files. * add possibility to define my own line macros placeholders * [DONE] get values for macro placeholders from Properties and subst in log line * make benchmarks and publish them in users guide * [DONE] Add possibility of having two types of loggers: "single threaded" (thread UNSAFE) and "multi threaded" (thread SAFE). Thread safe logger can be called from multiple threads simultaneously. It uses std:: mutex for synchronization. * [DONE] Add ability to use LogEngine library as header only lib. "Header only" mode will be turned on by defining global symbol LOGENGINE_HEADDER_ONLY in project settings. After that it is anough to do #include "LogEngine.h" to start using the library. * think of error_hanler for specific logger. what errors we should track? e.g. cannot create log file during GetLogger operation or during logger construction without GetLogger call * [DONE] Add callback logger type. User will be able to provide his own function (or lambda) that will be called on each log message of this logger. * [DONE] Added default logger. This is stdout loggers that can be accessed like this LogEngine::Warn(), LogEngine::ErrorFmt(), etc. * [DONE] .h file with LogEngine version defines LOGENGINE_VER_MAJOR, LOGENGINE_VER_MINOR, LOGENGINE_VER_PATCH. * collect statistics from Sinks. interface for that + method whether Sink collects statistic or not. * add color logging to console. * Add support to different log destinations: file, syslog, Windows event log, OutputDebugString, probably pipes. * Rename msvc project LogEngine to LogEngine2? * Add possibility to write logs with << operator: LOG(INFO) << "logstr1" << "logstr2" * Get the version number from current module (for Windows only) * Add separator line ?????? * [DONE] add possibility to configure loggers from config (.lfg) file * [DONE] add configuration to write logs into stdout and stderr * [DONE] configurable Date and/or Time format in log line. Done via logger and sink properties functionality * [DONE] add Async mode for writing logs. where logs are put into memory container and another thread performs actual routing and writing to file(s). * [DONE] Add possibility to write logs into multiple files * [DONE] Add a set of help functions FormatError, FormatInfo which returns formatted string for InternalWrite. They helps us to write tests more comfortable. * [DONE] Synchronization logs in separate thread. * [DONE] Add log file rotation. 1->2, 2->3 .... * [DONE] DateTimeMacro works wrong (as TimeMacro)