Show HN: C++, Java and C# Light-Weight-Logger

3 pointsposted 5 hours ago
by PenguineDavid

4 Comments

PenguineDavid

5 hours ago

I may have accidentally put the link to the wrong repo it's at https://github.com/PenguineDavid/light-weight-logger

This is a Library I've been working on with versions for C++, java & C# where you make custom formats and Log based on them, for example you could make an ERROR Like this:

[ERROR] [date, time-stamp, time-zone] <main log message> (file:thread-ID:line)

but you would write it like this:

// define the master format

master_style = "%C[%N]%c%S%G[%D %T %Z]%c %M %G(%F:%t:%L)";

// tell the logger what colour to use for a given name

logger.add_format("ERROR", master_style, Colour::RED);

so now the [ERROR] part will be red, the time area will be grey, and the location grey, but you could really make any style you wanted. And once you have a master format you could also add different types of logs:

logger.add_format("SUCCESS", style_minimal, Colour::GREEN); logger.add_format("INFO", master_style, Colour::CYAN); logger.add_format("WARN", master_style, Colour::YELLOW);

also the %S we put in there is actualy a colum padder so you logs will be inline:

[INFO] [16/06/2026 10:58:00 AUS Eastern Standard Time] Initializing core subsystem components. (src/main.cpp:1:39) [SUCCESS][16/06/2026 10:58:00 AUS Eastern Standard Time] Database connection established smoothly. (src/main.cpp:1:40) [WARN] [16/06/2026 10:58:00 AUS Eastern Standard Time] High memory usage detected on node cluster. (src/main.cpp:1:41) [ERROR] [16/06/2026 10:58:00 AUS Eastern Standard Time] Failed to write to write-ahead log! (src/main.cpp:1:42)