syslog-ng is a nice, flexible logging system that I use on most of my boxes. There's a good admin guide, but here are some short notes so I don't forget what I've done locally.
I wanted to store my verbose git-daemon logs in their own
file, so I added the following to
/etc/syslog-ng/conf.d/git-daemon.conf
:
destination git_daemon_file {
file("/var/log/git-daemon");
};
filter git_daemon_filter {
program("git-daemon");
};
filter git_daemon_drop_filter {
#level(notice, debug);
level(debug);
};
log {
source(src);
filter(git_daemon_filter);
filter(git_daemon_drop_filter);
flags(final);
};
log {
source(src);
filter(git_daemon_filter);
destination(git_daemon_file);
flags(final);
};
In /etc/syslog-ng/syslog-ng.conf
, you'll want to add something like:
include "conf.d";
to source the config files from /etc/syslog-ng/conf.d
in
alphabetical order. You should add the include
line before any
log
definitions so you can use final
to in your auxiliary rules.
Check that you didn't mess anything up with:
$ syslog-ng --syntax-only
Restart syslog-ng
with:
# /etc/init.d/syslog-ng reload