将本地应用程序添加到从/ var / log / messages中排除的syslog

我有一个应用程序logging到系统日志设施local1。 我想configurationsyslog,把所有的local1消息发送到一个独立于/ var / log / messages的日志文件 – 这很容易。 但消息将去/ var / log / messages。 有什么办法告诉系统日志发送* .info到/ var / log / messages但排除local1.info? (类似于* ^ loacl1.info?)

syslog.conf的:

#kern.* /dev/console *.info;mail.none;authpriv.none;cron.none /var/log/messages authpriv.* /var/log/secure local0.notice;local0.debug;mail.*;mail.none;mail.info;local0.info /var/log/maillog cron.* /var/log/cron *.emerg * uucp,news.crit /var/log/spooler local7.* /var/log/boot.log #My Custom App Logging local1.* /var/log/application.log 

尝试更换

 *.info;mail.none;authpriv.none;cron.none /var/log/messages 

通过

 *.info;mail.none;authpriv.none;cron.none;local1.!=info /var/log/messages 

这将logging消息匹配:任何设施与级别的信息和设施不邮件和设施不authpriv 和设施local1当级别是信息时可以

你应该使用

 #My Custom App Logging local1.* /var/log/application.log & ~ 

为系统日志或

 #My Custom App Logging local1.* /var/log/application.log & stop 

对于rsyslog 7+来防止日志消息被进一步处理。 确保这是 *.* / *.*到/ var / log / syslog的默认规则之前