ZH version is available. Content is displayed in original English for accuracy.
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)
Discussion (0 Comments)Read Original on HackerNews
No comments available or they could not be loaded.