Boost logo

Boost :

From: Darryl Green (darryl.green_at_[hidden])
Date: 2005-02-02 19:49:21


Just a couple of additions to your summary re the Torjo lib...

Caleb Epstein <caleb.epstein <at> gmail.com> writes:

> Torjo (need gmane URLs)

The code + docs is at http://www.torjo.com/code/logging-v131.zip,
search for "logging lib, v1.3" to find subsequent discussion, patches on
gmane.

> * No concept of a message severity or level (suggested to use
> different Log instances)

It is worth pointing out that this is a feature - not an omission.

> * Logs must be declared in a header, defined in a different TU.
> Helper macros provided to assist with this [this is the one feature I
> most dislike]

* But 1.3 included scoped logs, so if you want to create logs dynamically at
runtime you can. These logs don't need the declare/define.

* A disabled log has almost 0 overhead (a simple comparison operation only)
* Can effectively compile out logging using a dummy BOOST_LOG macro
(generating something like: if (1) ; else nullstream << stuff)
* Addresses problem of logging from eg. static object c'tors that may run
before logging system can be fully set up.
* Configurable (compile-time), minimal interface (just needs some form of
mutex) thread safety.
* For what it is worth, I think the fatal handler (or other interesting
behaviours triggered by particular logs being written to) can be implemented
by making an appender that is fatal, and directing "fatal" logs to it (as
well as to other appenders, of course the fatal appender must be the last
one).

Regards
Darryl.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk