Stop messages from going to /var/log/debug

I have a daemon running, milter-regex that is absolutely polluting my /var/log/debug file. After some digging around I thought by adding the "daemon.err;daemon.notice /var/log/milter-regex" that that would stop the milter-regex stuff from going into /var/log/debug. But that didn't work. What am I missing?

My /etc/rsyslog.d/50-default.conf file:

#
# Some "catch-all" log files.
#
*.=debug;\
        auth,authpriv.none;\
        news.none;mail.none     -/var/log/debug
*.=info;*.=notice;*.=warn;\
        auth,authpriv.none;\
        cron,daemon.none;\
        mail,news.none          -/var/log/messages

daemon.err;daemon.notice /var/log/milter-regex

#
# NOTE: adjust the list below, or you'll go crazy if you have a reasonably
#      busy site..
#
daemon.*;mail.*;\
        news.err;\
        *.=notice;*.=warn       |/dev/xconsole

Just for extra safety, add daemon.none to avoid daemon messages going to debug

*.=debug;\
        auth,authpriv.none;\
        news.none;mail.none;\
        daemon.none     -/var/log/debug

That'll also stop any other daemon messages getting to your debug log though.

Also I don't think you want to send all daemon.err and daemon.notice to a milter-regex explicit file.

If I were you I would try to look at milter-regex to either send messsages through mail.* (it's related to mail after all) or just to write itself to a log file


In the file that starts the milter-regex daemon you can set the type of logging with the parameter -l n, n being the level: 5 for Notice, 6 for Informational, or 7 for Debug.

In my case (Debian Linux), this is done in /etc/init.d/milter-regex.