diff options
-rw-r--r-- | tools/conf/etc/syslog-ng.conf | 235 |
1 files changed, 87 insertions, 148 deletions
diff --git a/tools/conf/etc/syslog-ng.conf b/tools/conf/etc/syslog-ng.conf index cfb1c08..16c1ddb 100644 --- a/tools/conf/etc/syslog-ng.conf +++ b/tools/conf/etc/syslog-ng.conf @@ -1,60 +1,43 @@ -############################################################################# -# Simple syslog-ng.conf for crux.nu, +@version: 3.17 # -# Silvino Silva < silvino at bk dot ru > -# Created: 1/12/2014 -# -# Reference: -# http://www.campin.net/syslog-ng/expanded-syslog-ng.con -# -# Notes: -# * f_error and f_console are not used -# -------------------------------------------------------------------------- -@version: 3.5 -@include "scl.conf" - -options { - flush_lines(0); - time_reopen(10); - chain_hostnames(off); - create_dirs(no); - stats_freq(1200); - use_dns(no); - use_fqdn(no); - perm(0600); - log_fifo_size(2048); - log_msg_size(1024); - keep_hostname(yes); -}; +# /etc/syslog-ng: syslog-ng(8) configration file +# based on a gentoo template added custom changes for crux -############################################# -# sources -# -source s_log { unix-dgram("/dev/log"); }; -source s_internal { internal(); }; -source s_kernel { file("/proc/kmsg" program_override("kernel")); }; +# on busy systems you may have to adjus flush_lines and suppress() to avoid +# heavy disc i/o +# to change default permissions/owner/group for newly created files add +# options like this: owner(root); group(sys); perm(0644); + +options { chain_hostnames(off); flush_lines(0); stats_freq(0); create_dirs(on); }; + +#source where to read log +source src { unix-stream("/dev/log"); internal(); }; +source kernsrc { file("/proc/kmsg"); }; +#define templates template t_debug { template("$DATE fac $FACILITY lvl $LEVEL prg $PROGRAM: $MSG\n"); }; -############################################# -# common destinations -# +#define destinations +destination authlog { file("/var/log/auth" suppress(5)); }; +destination sudo { file("/var/log/sudo" suppress(5)); }; +destination cron { file("/var/log/cron" suppress(5)); }; +destination kern { file("/var/log/kernel" suppress(5)); }; +destination mail { file("/var/log/mail" suppress(5)); }; -destination d_auth { file("/var/log/auth"); }; -destination d_cron { file("/var/log/cron"); }; -destination d_daemon { file("/var/log/daemon"); }; -destination d_kernel { file("/var/log/kernel"); }; -destination d_lpr { file("/var/log/lpr"); }; -destination d_mail { file("/var/log/mail"); }; -destination d_user { file("/var/log/user"); }; -destination d_syslog { file("/val/log/syslog"); }; +destination mailinfo { file("/var/log/mail.info" suppress(5)); }; +destination mailwarn { file("/var/log/mail.warn" suppress(5)); }; +destination mailerr { file("/var/log/mail.err" suppress(5)); }; -destination d_debug { file("/var/log/debug" template(t_debug)); }; -destination d_error { file("/var/log/error"); }; -destination d_messages { file("/var/log/messages"); }; +#destination newscrit { file("/var/log/news/news.crit" suppress(5)); }; +#destination newserr { file("/var/log/news/news.err" suppress(5)); }; +#destination newsnotice { file("/var/log/news/news.notice" suppress(5)); }; -destination d_console { usertty("root"); }; -destination d_console_all { usertty("root"); }; +destination debug { file("/var/log/debug" template(t_debug) suppress(5)); }; +destination messages { file("/var/log/messages" suppress(5)); }; +destination errors { file("/var/log/error" suppress(5)); }; +destination console { usertty("root"); }; +destination console_all { file("/dev/tty12" suppress(5)); }; +destination xconsole { pipe("/dev/xconsole" suppress(5)); }; ############################################# # custom destinations @@ -70,119 +53,75 @@ destination d_gitolite { file("/var/log/gitolite"); }; destination d_nginx_access { file("/var/log/nginx/access.log" owner(root) group(www) perm(0644)); }; destination d_nginx_error { file("/var/log/nginx/error.log"); }; -############################################# -# common filters -# -filter f_info { level(info); }; -filter f_notice { level(notice); }; -filter f_warn { level(warn); }; -filter f_err { level(err); }; -filter f_crit { level(crit .. emerg); }; - -filter f_emerg { level(emerg); }; -filter f_alert { level(alert); }; - -filter f_debug { - level(debug) - and not facility(auth, authpriv, mail, news) -}; - -filter f_error { level(err..emerg); }; -filter f_auth { facility(auth, authpriv); }; -filter f_cron { facility(cron); }; -filter f_daemon { facility(daemon); }; -filter f_kernel { facility(kern); }; -filter f_lpr { facility(lpr); }; - -filter f_local { facility( - local0, - local1, - local2, - local3, - local4, - local5, - local6, - local7 - ); -}; - -filter f_mail { facility(mail); }; -filter f_syslog { facility(syslog); }; -filter f_user { facility(user); }; -filter f_console { level(warn .. emerg); }; +#create filters +filter f_authpriv { facility(auth, authpriv); }; +filter f_cron { facility(cron); }; +filter f_kern { facility(kern); }; +filter f_mail { facility(mail); }; +#filter f_debug { not facility(auth, authpriv, mail) and not program(sudo); }; +filter f_debug { not facility(mail) and not program(sudo); }; +filter f_messages { level(info..warn) + and not facility(auth, authpriv, mail) and not program(sudo); }; +filter f_sudo { program(sudo); }; +filter f_errors { level(err..emerg); }; + +filter f_emergency { level(emerg); }; + +filter f_info { level(info); }; +filter f_notice { level(notice); }; +filter f_warn { level(warn); }; +filter f_crit { level(crit); }; +filter f_err { level(err); }; ############################################# # custom filters # - -filter f_messages { - level(info..warn) - and not facility(auth, authpriv, mail, cron) -}; - filter f_dnsmasq { program("dnsmasq"); }; filter f_postgres { facility(local0); }; filter f_sshd { facility(local1); }; -filter f_iptables { - facility(kern) - and match("iptables" value("MESSAGE")) -}; - -filter f_shorewall_warn { - level (warn) - and match ("Shorewall" value("MESSAGE")); -}; - -filter f_shorewall_info { - level (info) - and match ("Shorewall" value("MESSAGE")); -}; - +filter f_iptables { facility(kern) and match("iptables" value("MESSAGE")) }; +filter f_shorewall_warn { level (warn) and match ("Shorewall" value("MESSAGE")); }; +filter f_shorewall_info {level (info) and match ("Shorewall" value("MESSAGE")); }; filter f_gitolite { program("gitolite"); }; +filter f_nginx_access { match("nginx_access:" value("MESSAGE")); }; +filter f_nginx_error { match("nginx_error:" value("MESSAGE")); }; + +# examples for text-matching (beware of performance issues) +#filter f_failed { match("failed"); }; +#filter f_denied { match("denied"); }; + +#connect filter and destination +log { source(src); filter(f_authpriv); destination(authlog); }; +log { source(src); filter(f_sudo); destination(sudo); }; +log { source(src); filter(f_cron); destination(cron); }; +log { source(kernsrc); filter(f_kern); destination(kern); }; +log { source(src); filter(f_mail); destination(mail); }; +log { source(src); filter(f_mail); filter(f_info); destination(mailinfo); }; +log { source(src); filter(f_mail); filter(f_warn); destination(mailwarn); }; +log { source(src); filter(f_mail); filter(f_err); destination(mailerr); }; + +#log { source(src); filter(f_debug); destination(debug); }; +log { source(src); filter(f_messages); destination(messages); }; +log { source(src); filter(f_errors); destination(errors); }; +log { source(src); filter(f_emergency); destination(console); }; -filter f_nginx_access { - match("nginx_access:" value("MESSAGE")); -}; - -filter f_nginx_error { - match("nginx_error:" value("MESSAGE")); -}; - - -log { source (s_kernel); filter (f_iptables); destination (d_iptables); flags(final);}; -log { source (s_kernel); filter (f_shorewall_warn); destination (d_shorewall_warn); flags(final);}; -log { source (s_kernel); filter (f_shorewall_info); destination (d_shorewall_info); flags(final);}; -log { source(s_log); filter(f_dnsmasq); destination(d_dnsmasq); flags(final); }; -log { source(s_log); filter(f_postgres); destination(d_postgres); flags(final); }; -log { source(s_log); filter(f_sshd); destination(d_sshd); flags(final); }; -log { source(s_log); filter(f_gitolite); destination(d_gitolite); flags(final); }; -log { source(s_log); filter(f_nginx_error); destination(d_nginx_error); flags(final); }; -log { source(s_log); filter(f_local); filter(f_nginx_access); destination(d_nginx_access); flags(final); }; +#default log +#log { source(src); destination(console_all); }; ############################################# -# connect filter and destination +# custom # -log { source(s_log); filter(f_auth); destination(d_auth); }; -log { source(s_log); filter(f_cron); destination(d_cron); }; -log { source(s_log); filter(f_daemon); destination(d_daemon); }; -log { source(s_kernel); filter(f_kernel); destination(d_kernel); }; -log { source(s_log); filter(f_lpr); destination(d_lpr); }; -log { source(s_log); source(s_internal); filter(f_syslog); destination(d_syslog); }; -log { source(s_log); filter(f_user); destination(d_user); }; +log { source (kernsrc); filter (f_iptables); destination (d_iptables);}; +log { source (kernsrc); filter (f_shorewall_warn); destination (d_shorewall_warn);}; +log { source (kernsrc); filter (f_shorewall_info); destination (d_shorewall_info);}; +log { source(src); filter(f_dnsmasq); destination(d_dnsmasq);}; +log { source(src); filter(f_postgres); destination(d_postgres);}; +log { source(src); filter(f_sshd); destination(d_sshd);}; +log { source(src); filter(f_gitolite); destination(d_gitolite);}; +log { source(src); filter(f_nginx_error); destination(d_nginx_error);}; +log { source(src); filter(f_nginx_access); destination(d_nginx_access);}; -log { source(s_log); filter(f_mail); destination(d_mail); }; -log { source(s_log); filter(f_mail); filter(f_info); destination(d_mail); }; -log { source(s_log); filter(f_mail); filter(f_info); destination(d_mail); }; -log { source(s_log); filter(f_mail); filter(f_info); destination(d_mail); }; -log { source(s_log); filter(f_debug); destination(d_debug); }; -log { source(s_log); filter(f_error); destination(d_error); }; - -#log { source(s_log); filter(f_console); destination(d_console_all); }; -log { source(s_log); filter(f_crit); destination(d_console); }; - -#default log -log { source(s_log); filter(f_messages); destination(d_messages); }; |