Об этом проекте
StormByte Logger — это библиотека логирования на C++26, разработанная как часть пакета StormByte. Она предоставляет интерфейс логирования на основе потоков с поддержкой нескольких уровней логов (LowLevel, Debug, Warning, Notice, Info, Error, Fatal). Библиотека позволяет настраивать заголовки логов с использованием спецификаторов формата для уровня (%L), временной метки (%T), ID потока (%i) и литерала % (%%).
Она включает манипуляторы для форматирования чисел в удобочитаемом виде (humanreadable_number, humanreadable_bytes) и редактирования данных (redact, redact_first, no_redact). Редактирование применяется как к тексту, так и к числам, с возможностью сохранения первых или последних N символов. Состояние этих манипуляторов сохраняется до тех пор, пока оно не будет изменено.
Библиотека предлагает два основных класса логирования: Log (однопоточный) и ThreadedLog (потокобезопасный, использующий один замок на логическую строку и избегающий замков для сообщений ниже уровня печати). Примечание: обычный Log не является потокобезопасным; для многопоточных сред необходимо использовать ThreadedLog. Требуются StormByte Base и компилятор C++26.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.