FrameLog is a lightweight library for outputting logs to the console and file in C++.
Warning
Lua in GitHub statistics is just a build system. Don't pay attention and don't think there's anything wrong with Lua.
- Lightweight - Only 79.1 KiB when compiled in Release mode
- Buffered console output - Efficient string accumulation before flush
- File logging - Simple file writer with append/overwrite modes
- Stream API -
logger.custom << "Message " << value << "\n"; - Color support - ANSI colors + RGB (24-bit true color)
- Simple API - Trace, Print, Info, Warn, Error, Fatal levels
- Cross-platform - Linux, Windows, macOS
- Minimal dependencies - Only standard C++ library
- Patterns - output with the required data (for example, time, date, LogLevel)
- Standard C++ library (
std) - Compatible with C++17 and later
FrameLog is distributed under the MIT License.
See LICENSE for details.
Any platform with the standard C++ library
add line: include "FrameLog/include/FrameLog/premake5.lua"
FrameLog size is 79.1 KIB Measured FrameLog: Release builds, x64, premake5, gcc15, make
Why so small?
- Minimal dependencies (only std)
Perfect for:
- Docker containers (minimal images)
- Fast compilation times
- Quick program startup
- for projects where you just need a logger
FrameLog is currently in Release stage
git clone https://github.com/glpetrikov/FrameLog
cd FrameLog && premake5 gmake2 && cd build && make config=release
cd Release && ./sandboxWarning
If there are bugs in FrameLog API calls, they will be displayed in ANY configuration
premake5 vs2022open visual studio(2022) press f5
or
./run.sh./run.sh- Include FrameLog in your code and use it:
#include <FrameLog/FrameLog.h>
using namespace FrameLog;
int main() {
Logger logger("Main");
logger.custom << "Hello, FrameLog" << FL_VERSION << "-" << FL_STATUS << logger.EndL();
}More examples can be found in the examples folder.
- build See the "Building" section above.
Gleb Petrikov
- Buffered output
- Basic output functions
- Color support
- Basic log levels
- Additional log levels
- Base Custom format patterns
- Base Output pattern scanner
- File Log
- Minimal Log Level
- full-fledged Custom format patterns
- full-fledged Output pattern scanner
- Additional buffer capabilities
