<div dir="ltr">Hi,<br><br>I have been tried with your configuration. I&#39;m very happy, it succeed and my syslog-ng running like a charm. You are very helpful. Right now, I can sleep well.<br><br>Thank you very much.<br><br>
<div class="gmail_quote">On Fri, Sep 12, 2008 at 5:10 PM, Geller, Sandor (IT) <span dir="ltr">&lt;<a href="mailto:Sandor.Geller@morganstanley.com">Sandor.Geller@morganstanley.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi,<br>
<div class="Ih2E3d"><br>
&gt; #<br>
&gt; # This sample configuration file is essentially equilivent to<br>
&gt; the stock<br>
&gt; # FreeBSD /etc/syslog.conf file.<br>
&gt; #<br>
&gt;<br>
&gt; #<br>
&gt; # options<br>
&gt; #<br>
&gt; options { long_hostnames(off); sync(0); };<br>
&gt;<br>
&gt; #<br>
&gt; # sources<br>
&gt; #<br>
&gt; source src { unix-dgram(&quot;/var/run/log&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;unix-dgram(&quot;/var/run/logpriv&quot; perm(0600));<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;udp(); internal(); file(&quot;/dev/klog&quot;); };<br>
<br>
</div>You have a single source definition having multiple sources. As<br>
syslog-ng can&#39;t differentiate between these sources later, all<br>
logs arriving from any of the sources above would give a match.<br>
So I&#39;d recomment moving at least the udp() source to a separate<br>
source definition, like<br>
<div class="Ih2E3d"><br>
source src {<br>
 &nbsp; &nbsp; &nbsp; &nbsp;unix-dgram(&quot;/var/run/log&quot;);<br>
 &nbsp; &nbsp; &nbsp; &nbsp;unix-dgram(&quot;/var/run/logpriv&quot; perm(0600));<br>
</div> &nbsp; &nbsp; &nbsp; &nbsp;internal();<br>
 &nbsp; &nbsp; &nbsp; &nbsp;file(&quot;/dev/klog&quot;);<br>
};<br>
<br>
source s_remote {<br>
 &nbsp; &nbsp; &nbsp; &nbsp;udp();<br>
 &nbsp; &nbsp; &nbsp; &nbsp;tcp();<br>
};<br>
<br>
And use these sources in the log sections. This way syslog-ng can<br>
distinguish between the locally- and the remotely-generated logs.<br>
<div><div></div><div class="Wj3C7c"><br>
&gt; #<br>
&gt; # destinations<br>
&gt; #<br>
&gt; #destination <a href="http://local0.info" target="_blank">local0.info</a> {<br>
&gt; #file(&quot;/var/log/remote/servers/$HOST/$YEAR/$MONTH/$DAY/pflogd/<br>
pflogd.log&quot;<br>
&gt; #owner(root) group(root) perm(0600) dir_perm(0700) create_dirs(yes)<br>
&gt; #);<br>
&gt; #};<br>
&gt;<br>
&gt;<br>
&gt; destination messages { file(&quot;/var/log/remote/messages&quot;); };<br>
&gt; destination localhost { file(&quot;/var/log/remote/syslog-ng.all&quot;); };<br>
&gt; destination security { file(&quot;/var/log/remote/security&quot;); };<br>
&gt; destination authlog { file(&quot;/var/log/remote/auth.log&quot;); };<br>
&gt; destination maillog { file(&quot;/var/log/remote/maillog&quot;); };<br>
&gt; destination lpd-errs { file(&quot;/var/log/remote/lpd-errs&quot;); };<br>
&gt; destination xferlog { file(&quot;/var/log/remote/xferlog&quot;); };<br>
&gt; destination cron { file(&quot;/var/log/remote/cron&quot;); };<br>
&gt; destination debuglog { file(&quot;/var/log/remote/debug.log&quot;); };<br>
&gt; destination consolelog { file(&quot;/var/log/remote/console.log&quot;); };<br>
&gt; destination all { file(&quot;/var/log/remote/all.log&quot;); };<br>
&gt; destination newscrit { file(&quot;/var/log/news/news.crit&quot;); };<br>
&gt; destination newserr { file(&quot;/var/log/news/news.err&quot;); };<br>
&gt; destination newsnotice { file(&quot;/var/log/news/news.notice&quot;); };<br>
&gt; destination slip { file(&quot;/var/log/remote/slip.log&quot;); };<br>
&gt; destination ppp { file(&quot;/var/log/remote/ppp.log&quot;); };<br>
&gt; destination console { file(&quot;/dev/console&quot;); };<br>
&gt; destination allusers { usertty(&quot;*&quot;); };<br>
&gt; #destination loghost { udp(&quot;loghost&quot; port(514)); };<br>
&gt; #destination local0 { file(&quot;/var/log/remote/pflog.txt&quot;); };<br>
&gt; destination local0 { file(&quot;/var/log/remote/local0.log&quot;); };<br>
&gt; #destination local1 { file(&quot;/var/log/remote/alert&quot;); };<br>
&gt; destination local1 { file(&quot;/var/log/remote/local1.log&quot;); };<br>
&gt;<br>
&gt; #log {<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; source(tcp); source(internal); source(udp); source(unix);<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; source(s_tcp); source(s_internal); source(s_udp);<br>
&gt; source(s_unix);<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; filter(f_local0); filter(f_local1);<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; destination(df_local1);<br>
&gt; # };<br>
<br>
</div></div>In this commented part you have two filters which mutually exclude<br>
each other. As syslog-ng uses logical and operation this log section<br>
won&#39;t work.<br>
<div class="Ih2E3d"><br>
<br>
&gt; #<br>
&gt; # log facility filters<br>
&gt; #<br>
&gt; filter f_auth { facility(auth); };<br>
&gt; filter f_authpriv { facility(authpriv); };<br>
&gt; filter f_not_authpriv { not facility(authpriv); };<br>
&gt; filter f_console { facility(console); };<br>
&gt; filter f_cron { facility(cron); };<br>
&gt; filter f_daemon { facility(daemon); };<br>
&gt; filter f_ftp { facility(ftp); };<br>
&gt; filter f_kern { facility(kern); };<br>
&gt; filter f_lpr { facility(lpr); };<br>
&gt; filter f_mail { facility(mail); };<br>
&gt; filter f_news { facility(news); };<br>
&gt; filter f_security { facility(security); };<br>
<br>
</div>You should remove security. It&#39;s just an alias to auth<br>
<div><div></div><div class="Wj3C7c"><br>
&gt; filter f_user { facility(user); };<br>
&gt; filter f_uucp { facility(uucp); };<br>
&gt; #filter f_local0 { facility(local0); };<br>
&gt; #filter f_local00 { facility(local0); };<br>
&gt; #filter f_local1 { facility(local1); };<br>
&gt; #filter f_local01 { facility(local1) or facility(local1); };<br>
&gt; filter f_local2 { facility(local2); };<br>
&gt; filter f_local3 { facility(local3); };<br>
&gt; filter f_local4 { facility(local4); };<br>
&gt; filter f_local5 { facility(local5); };<br>
&gt; filter f_local6 { facility(local6); };<br>
&gt; filter f_local7 { facility(local7); };<br>
&gt;<br>
&gt; #<br>
&gt; # log level filters<br>
&gt; #<br>
&gt; filter f_emerg { level(emerg); };<br>
&gt; filter f_alert { level(alert..emerg); };<br>
&gt; filter f_crit { level(crit..emerg); };<br>
&gt; filter f_err { level(err..emerg); };<br>
&gt; filter f_warning { level(warning..emerg); };<br>
&gt; filter f_notice { level(notice..emerg); };<br>
&gt; filter f_info { level(info..emerg); };<br>
&gt; filter f_debug { level(debug..emerg); };<br>
&gt; filter f_is_debug { level(debug); };<br>
&gt;<br>
&gt; #<br>
&gt; # program filters<br>
&gt; #<br>
&gt; filter f_ppp { program(&quot;ppp&quot;); };<br>
&gt; filter f_slip { program(&quot;startslip&quot;); };<br>
<br>
</div></div>Better to use anchors to avoid false matches: program(&quot;^ppp$&quot;)<br>
<div><div></div><div class="Wj3C7c"><br>
&gt; #<br>
&gt; # *.err;kern.warning;auth.notice;mail.crit &nbsp; &nbsp; &nbsp; &nbsp;/dev/console<br>
&gt; #<br>
&gt; log { source(src); filter(f_err); destination(console); };<br>
&gt; log { source(src); filter(f_kern); filter(f_warning);<br>
&gt; destination(console); };<br>
&gt; log { source(src); filter(f_auth); filter(f_notice);<br>
&gt; destination(console); };<br>
&gt; log { source(src); filter(f_mail); filter(f_crit);<br>
&gt; destination(console); };<br>
&gt;<br>
&gt; #<br>
&gt; #<br>
&gt; *.notice;authpriv.none;kern.debug;<a href="http://lpr.info" target="_blank">lpr.info</a>;mail.crit;news.err<br>
&gt; &nbsp; &nbsp;/var/log/messages<br>
&gt; #<br>
&gt; log { source(src); filter(f_notice); filter(f_not_authpriv);<br>
&gt; destination(messages); };<br>
&gt; log { source(src); filter(f_kern); filter(f_debug);<br>
&gt; destination(messages); };<br>
&gt; log { source(src); filter(f_lpr); filter(f_info);<br>
&gt; destination(messages); };<br>
&gt; log { source(src); filter(f_mail); filter(f_crit);<br>
&gt; destination(messages); };<br>
&gt; log { source(src); filter(f_news); filter(f_err);<br>
&gt; destination(messages); };<br>
&gt;<br>
&gt; #<br>
&gt; # security.* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/security<br>
&gt; #<br>
&gt; log { source(src); filter(f_security); destination(security); };<br>
&gt;<br>
&gt; #<br>
&gt; # <a href="http://auth.info" target="_blank">auth.info</a>;<a href="http://authpriv.info" target="_blank">authpriv.info</a> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/auth.log<br>
&gt; log { source(src); filter(f_auth); filter(f_info);<br>
&gt; destination(authlog); };<br>
&gt; log { source(src); filter(f_authpriv); filter(f_info);<br>
&gt; destination(authlog); };<br>
&gt;<br>
&gt; #<br>
&gt; # <a href="http://mail.info" target="_blank">mail.info</a> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/maillog<br>
&gt; #<br>
&gt; log { source(src); filter(f_mail); filter(f_info);<br>
&gt; destination(maillog); };<br>
&gt;<br>
&gt; #<br>
&gt; # <a href="http://lpr.info" target="_blank">lpr.info</a> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/lpd-errs<br>
&gt; #<br>
&gt; log { source(src); filter(f_lpr); filter(f_info);<br>
&gt; destination(lpd-errs); };<br>
&gt;<br>
&gt; #<br>
&gt; # <a href="http://ftp.info" target="_blank">ftp.info</a> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/xferlog<br>
&gt; #<br>
&gt; log { source(src); filter(f_ftp); filter(f_info);<br>
&gt; destination(xferlog); };<br>
&gt;<br>
&gt; #<br>
&gt; # cron.* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/cron<br>
&gt; #<br>
&gt; log { source(src); filter(f_cron); destination(cron); };<br>
&gt;<br>
&gt; #<br>
&gt; # *.=debug &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/debug.log<br>
&gt; #<br>
&gt; log { source(src); filter(f_is_debug); destination(debuglog); };<br>
&gt;<br>
&gt; #<br>
&gt; # *.emerg &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;*<br>
&gt; #<br>
&gt; log { source(src); filter(f_emerg); destination(allusers); };<br>
&gt;<br>
&gt; #<br>
&gt; # uncomment this to log all writes to /dev/console to<br>
&gt; /var/log/console.log<br>
&gt; # <a href="http://console.info" target="_blank">console.info</a> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/console.log<br>
&gt; #<br>
&gt; #log { source(src); filter(f_console); filter(f_info);<br>
&gt; destination(consolelog); };<br>
&gt;<br>
&gt; #<br>
&gt; # uncomment this to enable logging of all log messages to<br>
&gt; /var/log/all.log<br>
&gt; # touch /var/log/all.log and chmod it to mode 600 before it will work<br>
&gt; # *.* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/all.log<br>
&gt; #<br>
&gt; #log { source(src); destination(all); };<br>
&gt;<br>
&gt; #<br>
&gt; # uncomment this to enable logging to a remote loghost named loghost<br>
&gt; # *.* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;@loghost<br>
&gt; #<br>
&gt; #log { source(src); destination(loghost); };<br>
&gt;<br>
&gt; #<br>
&gt; # uncomment these if you&#39;re running inn<br>
&gt; # news.crit &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/news/news.crit<br>
&gt; # news.err &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/news/news.err<br>
&gt; # news.notice &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/news/news.notice<br>
&gt; #<br>
&gt; #log { source(src); filter(f_news); filter(f_crit);<br>
&gt; destination(newscrit); };<br>
&gt; #log { source(src); filter(f_news); filter(f_err);<br>
&gt; destination(newserr); };<br>
&gt; #log { source(src); filter(f_news); filter(f_notice);<br>
&gt; destination(newsnotice); };<br>
&gt;<br>
&gt; #<br>
&gt; # !startslip<br>
&gt; # *.* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/slip.log<br>
&gt; #<br>
&gt; log { source(src); filter(f_slip); destination(slip); };<br>
&gt;<br>
&gt; #<br>
&gt; # !ppp<br>
&gt; # *.* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/var/log/ppp.log<br>
&gt; #<br>
&gt; log { source(src); filter(f_ppp); destination(ppp); };<br>
<br>
</div></div>As you&#39;re not logging local0 or local1, the config needs to be<br>
extended. First uncomment the f_local0 and f_local1 filters<br>
above, and add something like this to your config:<br>
<br>
# <a href="http://local0.info" target="_blank">local0.info</a><br>
<br>
log {<br>
 &nbsp; &nbsp; &nbsp; &nbsp;source(src);<br>
 &nbsp; &nbsp; &nbsp; &nbsp;filter(f_local0);<br>
 &nbsp; &nbsp; &nbsp; &nbsp;filter(f_info);<br>
 &nbsp; &nbsp; &nbsp; &nbsp;destination(local0);<br>
};<br>
<br>
# <a href="http://local1.info" target="_blank">local1.info</a><br>
<br>
log {<br>
 &nbsp; &nbsp; &nbsp; &nbsp;source(src);<br>
 &nbsp; &nbsp; &nbsp; &nbsp;filter(f_local1);<br>
 &nbsp; &nbsp; &nbsp; &nbsp;filter(f_info);<br>
 &nbsp; &nbsp; &nbsp; &nbsp;destination(local1);<br>
};<br>
<br>
Before making any changes I&#39;d think about whether I need to separate<br>
the local and remote logs, and when yes then I&#39;d update the log{}<br>
sections to refer to the appropriate source definition.<br>
<div><div></div><div class="Wj3C7c"><br>
Regards,<br>
<br>
Sandor<br>
--------------------------------------------------------<br>
<br>
NOTICE: If received in error, please destroy and notify sender. Sender does not intend to waive confidentiality or privilege. Use of this email is prohibited when received in error.<br>
______________________________________________________________________________<br>
Member info: <a href="https://lists.balabit.hu/mailman/listinfo/syslog-ng" target="_blank">https://lists.balabit.hu/mailman/listinfo/syslog-ng</a><br>
Documentation: <a href="http://www.balabit.com/support/documentation/?product=syslog-ng" target="_blank">http://www.balabit.com/support/documentation/?product=syslog-ng</a><br>
FAQ: <a href="http://www.campin.net/syslog-ng/faq.html" target="_blank">http://www.campin.net/syslog-ng/faq.html</a><br>
<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>MUHAMMAD AZIZUL DARUS<br><a href="http://www.foodmalaysia.net">http://www.foodmalaysia.net</a><br><a href="http://www.myfelis.com">http://www.myfelis.com</a><br>
<a href="http://yourubuntulinux.blogspot.com">http://yourubuntulinux.blogspot.com</a><br><a href="http://opensource-2u.blogspot.com">http://opensource-2u.blogspot.com</a><br><a href="http://photograph2u.blogspot.com">http://photograph2u.blogspot.com</a><br>
<a href="http://malaysiataste.blogspot.com">http://malaysiataste.blogspot.com</a><br><a href="http://jomshopping.blogspot.com">http://jomshopping.blogspot.com</a><br><a href="http://jahitan-manik.blogspot.com">http://jahitan-manik.blogspot.com</a><br>
<a href="http://nissan-maniac.blogspot.com">http://nissan-maniac.blogspot.com</a><br><a href="http://narutoslash.blogspot.com/">http://narutoslash.blogspot.com/</a><br>
</div>