Skip to content
ZhreShold edited this page Sep 15, 2015 · 9 revisions

Logging system is the fundamental module in each project as long as you want to log something, whatever it is. The more you use it, the stronger feeling that basic fprintf or iostream is not enough.

What a logger should do

  • Filter logging levels. For instance, You don't want debug messages in release mode.
  • Formatting. Process various kind of data type internally, like int, float, etc...
  • Attributing. Add timestamps, logging level, application name, etc.
  • Buffering. Using internal buffering techniques to speed up.
  • Controlling the logging target. Should be able to control files, streams, etc.

Principles in designing zupply logger in c++

  • Simple. Users should only care about what to log.
  • Highly configurable. Easy to config by built-in functions and more importantly, configuration file. So that you can control log output without touch and compile the code.
  • Hit the point.
Clone this wiki locally