CL-LOG - a general purpose logging utility

CL-LOG is a general purpose logging utility, loosely modelled in some respects after Gary King's Log5.

Its features include:

Typically, logging utilities only support the one, simple paradigm of formatting objects to a text-stream. Removing this restriction allows you to:

Logging is controlled by the following classes: log-manager, base-messenger, base-message, category-set; any of these might be specialised by your application. Whether or not a messenger will accept a given message is controlled by the "category" of the message and the "filter" of the messenger; these are logical combinations of atoms (typically keywords).

I'd expect CL-LOG to work as-is on any conforming implementation of Common Lisp. I've tested it on: ABCL, ACL, CCL, LW, SBCL.

CL-LOG is released with an MIT-style license.

Obtaining CL-LOG

CL-LOG consists of two source files: pkg.lisp and cl-log.lisp. An asdf definition is also provided, and a simple test suite.

There's also documentation which is longer than the source, so it's up to you which you read.

You can download the current release of all these files in a bundle (gzipped tarball).

Finally, CL-LOG and its test-suite are avaliable for download and installation via Quicklisp.

(ql:quickload :cl-log)
(ql:quickload :cl-log-test)

Problems? Suggestions? Derision?

Let me know.