ifacethoughts

Pantheios – The C++ Logging Sweetspot

Logging is ubiquitous and a cross-cutting and critical aspect of any application. A good logging library is like a good assistant who can take a share of responsibility and lighten your load. Matthew Wilson mentioned the logging library Pantheios as one of the tools developed in accordance with concepts, patterns and principles discussed in the book Breaking Up The Monolith. I had come across Pantheios in a couple of discussions, but did not give it a real try. It is really a cool alternative to a lot of existing libraries for more than just open source and performance.

It already knows a lot of types and is extensible. Internally it works with strings and uses these shims for conversions. For extensions you can provide your own shim conversions for your own types.

Take a look at the architecture. The application layer contains the functions that application code uses. The existence of front-end and back-end components allow customization by extension for using the library in any application. Lot of useful back-ends are already supported by the tool. The core component is responsible for manufacturing the message to be logged using the parameters passed, which it does efficiently.

It is one of the C++ libraries which further the purpose of C++, to provide functionality with performance. Not only is it convenient and applicable in a wide scenarios, it will be very interesting to browse through the source code. Whether you end up using this library or not, its source code will be a treasure of gems.

Discussion [Participate or Link]

  1. Cookie Raver said:

    I use it. It’s excellent.

    The only downside I find is that it’s still lacking “back-end” extensions for working with log4cxx or log4cpp, although that’s on the TODO list I believe.

  2. Abhijit Nadgouda said:

    Yes, it is one of the good ones. I would like to play a lot more with it though, very interesting.

Say your thought!

Who are you?

If you want to use HTML you can use these tags: <a>, <em>, <strong>, <abbr>, <code>, <blockquote>. Closing the tags will be appreciated as this site uses valid XHTML.

This is the weblog of Abhijit Nadgouda where he writes down his thoughts on software development and related topics. You are invited to subscribe to the feed to stay updated or check out more subscription options. Or you can choose to browse by one of the topics.