We’re pleased to announce a new daemon for transmitting log messages
from text log files to Papertrail: remote_syslog2. remote_syslog2 replaces its predecessor, remote_syslog, and provides 2 major improvements:
- no dependencies, so setup is painless. We rewrote the daemon in
Go so it doesn’t require Ruby or any other VM.
While we love the Ruby language, we love dependency-free apps a lot more.The tarball contains a single binary. “Installation” is simply copying
that file and an optional configuration file. remote_syslog2 runs on
almost any modern Unix with a working C library.
- less code (read: potential idiosyncrasies) between the daemon and
the OS. Most of this daemon’s work is file or network I/O. Because
Go’s libraries are closer to direct mappings to the corresponding libc
calls, they’re less likely to introduce bugs or implementation idiosyncrasies.Those which do occur are generally easier to reproduce and diagnose,
since any two systems are much closer to identical. In contrast, the
older remote_syslog has a known TLS bug that we believe was introduced
by a dependency (rather than in remote_syslog itself), but which was
effectively impossible to reproduce consistently enough to diagnose.
We’ll continue to support the older remote_syslog, so there’s no pressure
to upgrade. For new environments, we strongly recommend
remote_syslog2. To learn more or download a release tarball, visit the README.