@version: 4.3 @include "scl.conf" # Syslog-ng configuration file, compatible with default Debian syslogd # installation. # First, set some global options. options { chain_hostnames(off); flush_lines(0); use_dns(no); use_fqdn(no); owner("root"); group("adm"); perm(0640); stats(freq(0)); bad_hostname("^gconfd$"); dns_cache(no); }; ######################## # Sources ######################## # This is the default behavior of sysklogd package # Logs may come from unix stream, but not from another machine. # #source s_src { # system(); # internal(); #}; # If you wish to get logs from remote machine you should uncomment # this and comment the above source line. # source s_network { syslog(transport("tcp") port(514)); }; ######################## # Destinations ######################## # First some standard logfile # destination d_apache_access { file("/usr/share/docassemble/log/apache_access.log" owner("www-data") group("www-data") perm(0600)); }; destination d_apache_error { file("/usr/share/docassemble/log/apache_error.log" owner("www-data") group("www-data") perm(0600)); }; destination d_nginx_access { file("/usr/share/docassemble/log/access.log" owner("www-data") group("www-data") perm(0600)); }; destination d_nginx_error { file("/usr/share/docassemble/log/error.log" owner("www-data") group("www-data") perm(0600)); }; destination d_docassemble { file("/usr/share/docassemble/log/docassemble.log" owner("www-data") group("www-data") perm(0600)); }; destination d_websockets { file("/usr/share/docassemble/log/websockets.log" owner("www-data") group("www-data") perm(0600)); }; destination d_daworker { file("/usr/share/docassemble/log/worker.log" owner("www-data") group("www-data") perm(0600)); }; destination d_daworkersingle { file("/usr/share/docassemble/log/single_worker.log" owner("www-data") group("www-data") perm(0600)); }; destination d_uwsgi { file("/usr/share/docassemble/log/uwsgi.log" owner("www-data") group("www-data") perm(0600)); }; destination d_supervisor { file("/usr/share/docassemble/log/supervisor.log" owner("www-data") group("www-data") perm(0600)); }; destination d_auth { file("/var/log/auth.log"); }; destination d_cron { file("/var/log/cron.log"); }; destination d_daemon { file("/var/log/daemon.log"); }; destination d_kern { file("/var/log/kern.log"); }; destination d_lpr { file("/var/log/lpr.log"); }; destination d_mail { file("/var/log/mail.log"); }; destination d_syslog { file("/var/log/syslog"); }; destination d_user { file("/var/log/user.log"); }; destination d_uucp { file("/var/log/uucp.log"); }; # This files are the log come from the mail subsystem. # destination d_mailinfo { file("/var/log/mail.info"); }; destination d_mailwarn { file("/var/log/mail.warn"); }; destination d_mailerr { file("/var/log/mail.err"); }; # Logging for INN news system # destination d_newscrit { file("/var/log/news/news.crit"); }; destination d_newserr { file("/var/log/news/news.err"); }; destination d_newsnotice { file("/var/log/news/news.notice"); }; # Some 'catch-all' logfiles. # destination d_debug { file("/var/log/debug"); }; destination d_error { file("/var/log/error"); }; destination d_messages { file("/var/log/messages"); }; # The root's console. # destination d_console { usertty("root"); }; # Virtual console. # # destination d_console_all { file(`tty10`); }; # The named pipe /dev/xconsole is for the nsole' utility. To use it, # you must invoke nsole' with the -file' option: # # $ xconsole -file /dev/xconsole [...] # # destination d_xconsole { pipe("/dev/xconsole"); }; # Debian only destination d_ppp { file("/var/log/ppp.log"); }; ######################## # Filters ######################## # Here's come the filter options. With this rules, we can set which # message go where. filter f_apache_access { level(debug) and program("apache"); }; filter f_apache_error { level(error) and program("apache"); }; filter f_nginx_access { level(debug) and program("nginx"); }; filter f_nginx_error { level(error) and program("nginx"); }; filter f_docassemble { program("docassemble"); }; filter f_websockets { program("websockets"); }; filter f_daworker { program("celery"); }; filter f_daworkersingle { program("celerysingle"); }; filter f_uwsgi { program("uwsgi"); }; filter f_supervisor { program("supervisor"); }; filter f_dbg { level(debug); }; 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_debug { level(debug) and not facility(auth, authpriv, news, mail); }; filter f_error { level(err .. emerg) ; }; filter f_messages { level(info,notice,warn) and not facility(auth,authpriv,cron,daemon,mail,news); }; filter f_auth { facility(auth, authpriv) and not filter(f_debug); }; filter f_cron { facility(cron) and not filter(f_debug); }; filter f_daemon { facility(daemon) and not filter(f_debug); }; filter f_kern { facility(kern) and not filter(f_debug); }; filter f_lpr { facility(lpr) and not filter(f_debug); }; filter f_local { facility(local0, local1, local3, local4, local5, local6, local7) and not filter(f_debug); }; filter f_mail { facility(mail) and not filter(f_debug); }; filter f_news { facility(news) and not filter(f_debug); }; filter f_syslog3 { not facility(auth, authpriv, mail) and not filter(f_debug); }; filter f_user { facility(user) and not filter(f_debug); }; filter f_uucp { facility(uucp) and not filter(f_debug); }; filter f_cnews { level(notice, err, crit) and facility(news); }; filter f_cother { level(debug, info, notice, warn) or facility(daemon, mail); }; filter f_ppp { facility(local2) and not filter(f_debug); }; filter f_console { level(warn .. emerg); }; ######################## # Log paths ######################## log { source(s_network); filter(f_apache_access); destination(d_apache_access); }; log { source(s_network); filter(f_apache_error); destination(d_apache_error); }; log { source(s_network); filter(f_nginx_access); destination(d_nginx_access); }; log { source(s_network); filter(f_nginx_error); destination(d_nginx_error); }; log { source(s_network); filter(f_docassemble); destination(d_docassemble); }; log { source(s_network); filter(f_websockets); destination(d_websockets); }; log { source(s_network); filter(f_daworker); destination(d_daworker); }; log { source(s_network); filter(f_daworkersingle); destination(d_daworkersingle); }; log { source(s_network); filter(f_uwsgi); destination(d_uwsgi); }; log { source(s_network); filter(f_supervisor); destination(d_supervisor); }; log { source(s_network); filter(f_auth); destination(d_auth); }; log { source(s_network); filter(f_cron); destination(d_cron); }; log { source(s_network); filter(f_daemon); destination(d_daemon); }; log { source(s_network); filter(f_kern); destination(d_kern); }; log { source(s_network); filter(f_lpr); destination(d_lpr); }; log { source(s_network); filter(f_syslog3); destination(d_syslog); }; log { source(s_network); filter(f_user); destination(d_user); }; log { source(s_network); filter(f_uucp); destination(d_uucp); }; log { source(s_network); filter(f_mail); destination(d_mail); }; #log { source(s_network); filter(f_mail); filter(f_info); destination(d_mailinfo); }; #log { source(s_network); filter(f_mail); filter(f_warn); destination(d_mailwarn); }; #log { source(s_network); filter(f_mail); filter(f_err); destination(d_mailerr); }; log { source(s_network); filter(f_news); filter(f_crit); destination(d_newscrit); }; log { source(s_network); filter(f_news); filter(f_err); destination(d_newserr); }; log { source(s_network); filter(f_news); filter(f_notice); destination(d_newsnotice); }; #log { source(s_network); filter(f_cnews); destination(d_console_all); }; #log { source(s_network); filter(f_cother); destination(d_console_all); }; #log { source(s_network); filter(f_ppp); destination(d_ppp); }; log { source(s_network); filter(f_debug); destination(d_debug); }; log { source(s_network); filter(f_error); destination(d_error); }; log { source(s_network); filter(f_messages); destination(d_messages); }; # log { source(s_network); filter(f_console); destination(d_console_all); }; log { source(s_network); filter(f_crit); destination(d_console); }; # All messages send to a remote site # #log { source(s_network); destination(d_network); };