[bind10-dev] Logging API - Review Required + Choice of Logging Package

Stephen Morris stephen at isc.org
Mon Dec 20 15:24:15 UTC 2010


An outline for the API for the Logging API can be found at http://bind10.isc.org/wiki/LoggingCppApiDesign.  This needs a review.

For implementation, I've been looking a bit at the common logging frameworks that I mentioned in an earlier email (and for which Jeremy commented on the licence conditions):


>> Google log (http://code.google.com/p/google-glog)
> BSD style license
Google log looks OK, but:

a) By default logging goes to a file and the date/time of file creation is hard-coded in it.
b) Messages of different severities can be routed to different destinations, but routing by origin appears to be based on file names (i.e. you can route output from files whose names start "xyz")
c) The documentation is brief ("look in the file headers for more details")


>> Log4cpp (http://log4cpp.sourceforge.net)
> LGPL
Last modified in 2007.  Is development still active and if not, what do we do if we need to modify it?

> 
>> Log4cplus (http://log4cplus.sourceforge.net)
> Simplified BSD license (or optionally Apache 2.0 license)
I'm worried that this is a one-man project and that makes us vulnerable if we use it in a production system.


>> Log4cxx (http://logging.apache.org)
> Apache 2.0 license
This seems to meet our requirements, and as I understand the Apache licence, this is also compatible with the licence we aim for in BIND-10.


>> Pantheios (http://pantheios.sourceforge.net)
> BSD style license
Still need to check this in detail - has anyone used it?


>> Boost (http://boost-log.sourceforge.net)
> Boost Software License 1.0 (it is fine)
Boost logging looks good, but it seems to need an awful lot of Boost to run including several libraries.  Given the discussions about only wanting header-only versions of Boost, I guess that this is ruled out.

Although Pantheios might meet our needs, Apache log4cxx also appears to do what we want and comes from a known source.  I suggest we go for that.

Stephen


More information about the bind10-dev mailing list