libsyslogp is a library for parsing raw syslog messages. It currently supports RFC 3164 style BSD syslog messages (and some minor variants), and has limited support for newer RFC 5424 style syslog messages.

This library has been written because there seem to be no independent C libraries for parsing raw syslog messages. The most complicated part of the task is to parse the date, which comes in a variety of formats; the source code for the built-in message parser of syslog-ng proved to be an invaluable reference for this. Nevertheless, the implementation here is independent of syslog-ng.

This library is intended to be part of an upcoming XML Status project, part of which is a syslogd implementation. To that end it departs slightly from the RFC3164 model (things like which characters are allowed in the tag, and the addition of a formal specification of an id field) in order to match the XML Status logging model. It is not fully RFC 5424 compliant as it currently treats structured data (SD) as part of the message; this feature can certainly be added, but the author's present time constraints have stopped this goal.


You can download the latest version by cloning the git repository:

git clone git://
Released Files.
Version Date Source GPG Signature (key) Documentation Doc Signature Dependencies
0.1.0 2009-11-06 .tar.bz2 .tar.bz2.asc .tar.bz2 .tar.bz2.asc libiso8601

Older releases may be found here.