~/talk

Minimal Logging Framework in C++20

Talkat Meeting C++ 2023 · 2023-11-12..11-14· [developer-experience]
links:none on file
slides:none on file

A compact C++20 logger is built: about 200 lines that record an 8‑byte high‑resolution timestamp (8 bytes timestamp), an instruction pointer, a second instruction pointer to encode argument types, and binary arguments into a circular fixed-capacity buffer allocated before the hot path. Runtime formatting is avoided, offline decoding uses a symbol archive to map addresses back to file/line/types. Unit tests validate timing and decoding; it reduces I/O and space dramatically but requires care with inlining, ASLR/load addresses and added bookkeeping.

AI-written summary · about

  1. 0:00Introduction
  2. 2:04Current logging practices
  3. 5:18Performance issues
  4. 8:38Minimal logging concept
  5. 14:00Implementing the core logger
  6. 16:39Instruction pointers
  7. 23:42Adding arguments
  8. 31:24Advanced logging techniques
  9. 36:05System summary
  10. 38:56Q&A and conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.