An easy to use logging library

Liblogging is an easy to use, portable, open source library for system logging. It comes with an BSD-style license. Liblogging was initiated by Rainer Gerhards.

The original idea was to provide a very slim BEEP look-alike to implement with a few hundered lines of code. Well, during development new ideas popped up and the design goal now has evolved to provide a library useful for all kinds of system logging.

Liblogging is unique in the way that it was specifically designed for system logging and ease of use. There are many BEEP libraries out there and most of them support the syslog reliable RAW profile. However, these libraries have a very complex API, which is overdone just for logging. Software implementors stay away from those libraries. We hope that liblogging will make reliable syslog available to everyone. There is a very short, easy to use and learn API.

The library is still in its infancy. The full liblogging documentation as well as source code is available (please note: the source code link points to a generic file name without version. The versionless one is always the most current. This makes it easier for me to provide links to third parties).

Liblogging is developed under Win32 and has been ported to *nix. The author tries to keep both platforms current. Coming changes may result in the temporary loss of the Linux platform, but the author hopes to find some helping hands should this happen...


  • Current Release: 0.5.0
  • Platforms: Win32, Linux, [AIX, Solaris, FreeBSD (all tested with 0.3.1 only)]
  • Protocols Supported:
    • RFC 3195/RAW, client AND server
    • RFC 3195/COOKED, client only
    • timestamps according to ID syslog-sign-12

Subscribe to liblogging's mailing lists.



  • 2003-09-12 - liblogging 0.5.0 is now available. It comes with the addition of a client-side COOKED profile (not yet on the server side) as well as a full-blown message object.
  • 2003-09-02 - Moved the instable source (currently pre-0.4.0) to SourceForge.Net CVS. I will keep this version healthy as I move along. Only instable version will be found there for the time being (else use the ZIP archives).
  • 2003-08-29 - MonitorWare Agent 1.3 now supports rfc 3195/raw for both sending and receiving syslog messages - it is the world's first windows application doing so. See the news release for complete details.
  • 2003-08-29 - liblogging 0.3.1 is now available. This version is the first one to include support for building servers (listeners). Please note that there is NO 0.3.0 version - this number was eaten up by an incomplete copy passed on to some limited folks. While version 0.3.1 is the first to support servers, the API is not yet stable. It will eventually change, so people using the library immediately should be prepared to change there code. The client API, on the other hand, is guaranteed to remain the same. So in short words it is safe to base a client on liblogging, but a little dangerous to do the same with a server. ;) The server API does not yet support synchronization to the server's actual workload. Depending on your threading model, this may be a little uncomfortable...
  • 2003-08-26 - liblogging is now also on sourceforge.net - while the main project home page remains here, we will use the sourceforge discussion lists, forums and bug trackers. news release for complete details.
  • 2003-08-25 - initial code base for 0.3.0 more or less finished. The server runs and talks to other products. It needs a lot of polishing - I think we are still some days away from a public release.
  • 2003-08-12 - first commercially available client based on liblogging available - Adiscon's logger syslog command line tool. See news release for details.
  • 2003-08-12 - liblogging 0.2.0 is now available. This is a stable build with a stable API. If you develop applications against the 0.2.0 API, these applications will work with all future versions of liblogging. Promised. So it is a good idea to being using it now. 0.2.0 is a 0.x release because it is not feature complete. However, the features now in are implemented quite solidly, so you can actually use it in your code. Thanks to Devin Kowatch, the library now compiles and runs under Win32, Linux, AIX, Solaris and FreeBSD. If you have another *nix variant, you may want to give it a try, ports have been show to be quite easy.
  • 2003-08-05 - liblogging 0.1.1 is now available. This is an interim version. It now compiles and runs cleanly under Linux (verified with Red Hat Linux 8.0). Many thanks to Devin Kowatch, who provided initial proof that a port would be simple and also provided code for the socket layer and many more tipps. As such, liblogging is now available both for Win32 as well as Linux. It has successfully talked to SDSC syslogd from both platforms. The 0.1.1 release was a bit unscheduled - as such it contains some incomplete linked list code, which is nowhere being used - just in case you wonder ;)
  • 2003-08-04 - liblogging 0.1.0 source is now available. The (client side) API is now stable and should not need to be changed any time in the future. It is now up to around 3000 lines of code.
  • Initial proof-of-concept that rfc 3195 can be done with very few overhead. Roughly 300 (very dirty) lines of code did the trick. Proof available online as part of beta 1 of Adiscon logger 1.1 tool. Please note that during the development we found some bugs in SDSC syslog and we have worked around them so that we could complete work. As such, logger 1.1beta1 work with SDSC syslogd 1.0.0 but not any higher release.

Future Milestones

The exact order of future development has not yet been decided, but it is likely that it will be close in the way the topics are ordered in this list:

  • Implementation of a BEEP XML parser. This is needed to fully support BEEP channel 0 protocol. DONE
  • Implementation of support for listener profiles. DONE
  • Support for a higher-lever representation of the syslog message as an easy to deal with object in its own right. DONE
  • client-side support for RFC 3195 / COOKED DONE
  • Inclusion of the client-side functionality in Adiscon's MonitorWare line of products. partly DONE
  • Inclusion of the server-side functionality in Adiscon's MonitorWare line of products. partly DONE
  • inclusion of traditional UDP based syslog
  • Test-implementation of syslog-international (also to see if syslog-international can easily enough be put in code).
  • inclusion of syslog-sign
  • server-side support for RFC 3195 / COOKED
  • relay support for RFC 3195 / COOKED
  • Improvments to the server-side API
  • Eventually support for tuning profiles, which will provide encryption. This will be done with the help of openssl.
  • inclusion of relay functionality of RFC 3195 / COOKED
  • the creation of a drop-in API replacement for the BSD syslog calls

We are also looking into the IETF intrusion detection WGs - there is some interesting work going on which could eventually be included in liblogging.

The information is current as of 2003-08-03. If you would like to contact the author, please email Rainer Gerhards and watch for the reply with information on how to get to his real mail box. (The mailto is just a fake to feed the spammers ;)).

 The Products
MonitorWare Products
Product Comparison
Which one to Purchase?
Order and Pricing
Upgrade Insurance Info
News Releases
Version History
MonitorWare Tools
 Event Repository
 Reference library
General Information
Step-by-step guides
 - All
 - Installation and Configuration
 - Services related
 - Actions related
 - Central Monitoring
Common Uses
Syslog configuration
Syslog Log Samples
Security Reference
 - All
 - General questions
 - Configurations related
 - Monitorware Agent
 - Monitorware Console
Seminars Online
 - All
 - General
 - MonitorWare Console
 - MonitorWare Agent
 - WinSyslog related
 - EventReporter
 Order & pricing
Order now
Product Comparison
Pricing Information
Upgrade Insurance Info
Local Reseller
 Contact Us
 Data privacy policy

Printer Version Send this page to a friend

Copyright © 1988-2005 Adiscon GmbH All rights reserved.
Contact us via Secure Web Response | Privacy Policy
Topic Links: syslog | Free Weblinks Directory