Easy, performant syslog for Clojure, exposed as a manifold stream. Supports RFC 3164 (classic BSD syslog), and the RFC5424 compliant RFC 5426 (syslog over UDP) and RFC 6587 (syslog over TCP and TLS) specifications.
Since all of this is exposed using the stream abstractions from
manifold, it works well with a variety of synchronous and
asynchronous programs, including core.async
.
A couple of reasons you might want this:
- By having the API be a stream, your code becomes much easier to test. No need to set up a real syslog server; just see what comes out the other end.
- You can also use Clojure-like shorthand for severities, facilities and the
like, for example, you can use
:info
(short for:informational
, the name used in the spec, which also works) or even"INFO"
instead of having to remember that that's severity 6. - You can log strings or structured messages; they'll be serialized appropriately regardless.
- Breadth of different specs and transports (UDP, TCP, TLS) supported.
TODO
Copyright © 2016 Rackspace Hosting, Inc.
Distributed under the Eclipse Public License either version 1.0 or (at your option) any later version.