Markus, this may also be useful:
http://wiki.rsyslog.com/index.php/Sysklogd_drop-in_with_remote_logs_separated _by_dynamic_directory Rainer > -----Original Message----- > From: [email protected] [mailto:rsyslog- > [email protected]] On Behalf Of Rainer Gerhards > Sent: Wednesday, October 06, 2010 2:17 PM > To: rsyslog-users > Subject: Re: [rsyslog] Outgoing Mails Logfile - Ported from Syslog-ng > > Hi Markus, > > unfortunately I do not have time at the moment to go through this at > full > length. But a couple of points below: > > > -----Original Message----- > > From: [email protected] [mailto:rsyslog- > > [email protected]] On Behalf Of Markus Stegmueller > > Sent: Monday, October 04, 2010 12:52 PM > > To: [email protected] > > Subject: [rsyslog] Outgoing Mails Logfile - Ported from Syslog-ng > > > > Hello, > > > > I am trying to convert my syslog-ng Filter to a working rsyslog > Filter > > Configuration. Here is my > > syslog-ng Filter: > > > > destination d_antispam { file("/var/log/mail_antispam"); }; > > > > filter f_antispam { facility(mail) and not match("[email protected]") > > and not > > match("localhost.example.de") and not match("[email protected]") and > not > > match("maildummy@") and not > > match("nob...@example") and not match("spamdrop") and not > > match("NOQUEUE") and not match("reject:") > > and ((match("to=<") and match("status=sent") and not > > match("relay=procmail") and not > > match("relay=/var/lib/imap/socket/lmtp") and not match("relay=local") > > and not > > match("relay=10.0.50.2")) or match("from=<.*example\.de>")); }; > > > > log { source(src); filter(f_antispam); destination(d_antispam); }; > > > > This Filter is to get all the mails, that were send from example.de > > users, so I can re-use them to > > make a whitelist. > > I don't know syslog-ng syntax, but guess I got an idea of what you do. > > > > > > > I tried to make an expression Based Filter: > > > > if $syslogfacility-text == 'mail' and not $msg contains > > '[email protected]' and not $msg contains > > 'localhost.example.de' and not $msg contains '[email protected]' and > not > > $msg contains 'maildummy@' > > and not $msg contains 'nob...@example' and not $msg contains > 'spamdrop' > > and not $msg contains > > 'NOQUEUE' and not $msg contains 'reject:' and ( $msg contains 'to=<' > > and $msg contains 'status=sent' > > and not $msg contains 'relay=procmail' and not $msg contains > > 'relay=/var/lib/imap/socket/lmtp' and > > not $msg contains 'relay=local' and not $msg contains > 'relay=10.0.50.2' > > ) or $msg contains > > 'from=<.*example.de>' then /var/log/mail_antispam > > This sounds basically correct. Is it all on one line? if not, you need > to add > "\" at the end of each line, an artifact of the current config system. > like > this: > > if $syslogfacility-text == 'mail' and not $msg contains \ > '[email protected]' and not $msg contains \ > 'localhost.example.de' and not $msg contains '[email protected]' and not > \ > ... > > If that does not solve the issue, please reduce the logic until it > works. > Then we can check what the culprit is. Also make sure you do not get > any > errors while reading the config file. Finally, a look at rsyslog's > debug log > may help. > > > And also a property based: > > > > :msg, contains, "to=<" ~ > > :msg, contains, "status=sent" ~ > > :msg, regex, "from=<*example\.de>" ~ > > :msg, !contains, "localhost.example.de" ~ > > :msg, !contains, "[email protected]" ~ > > :msg, !contains, "maildummy@" ~ > > :msg, !contains, "[email protected]" ~ > > :msg, !contains, "spamdrop" ~ > > :msg, !contains, "NOQUEUE" ~ > > :msg, !contains, "reject:" ~ > > :msg, !contains, "relay=procmail" ~ > > :msg, !contains, "relay=/var/lib/imap/socket/lmtp" ~ > > :msg, !contains, "relay=local" ~ > > :msg, !contains, "relay=10.0.50.2" ~ > > mail.* -/var/log/mail_antispam > > > > > > At the Property based Filters - I do not understand how to make an > AND > > or an OR... and at the > > expression based one, > > Because that's not possible. For boolean filters, you need to use the > if-type > of filter. > > HTH > Rainer > _______________________________________________ > rsyslog mailing list > http://lists.adiscon.net/mailman/listinfo/rsyslog > http://www.rsyslog.com _______________________________________________ rsyslog mailing list http://lists.adiscon.net/mailman/listinfo/rsyslog http://www.rsyslog.com

