在我的小型Debian挤压networking服务器上,我安装了syslog-ng( 不是 syslogd,就像这个问题一样 )。 一般来说,我的日志很好,很安静
-- MARK --
线。 然而,我的/var/log/syslog散布在这里
Sep 23 23:09:01 bookchin /USR/SBIN/CRON[24885]: (root) CMD ( [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -type f -cmin +$(/usr/lib/php5/maxlifetime) -delete > /dev/null) Sep 23 23:09:01 bookchin /USR/SBIN/CRON[24886]: (root) CMD ( [ -d /var/lib/php4 ] && find /var/lib/php4/ -type f -cmin +$(/usr/lib/php4/maxlifetime) -print0 | xargs -r -0 rm > /dev/null) Sep 23 23:17:01 bookchin /USR/SBIN/CRON[24910]: (root) CMD ( cd / && run-parts /etc/cron.hourly)
一种垃圾。 什么是避免它的干净方式(再次,与syslog-ng)?
对于syslog-ng,它与普通的syslog稍有不同:您需要将cron添加到与/var/log/syslog关联的筛选器中。 在/etc/syslog-ng/syslog-ng.conf ,将其replace为:
filter f_syslog3 { not facility(auth, authpriv, mail) and not filter(f_debug); };
有:
filter f_syslog3 { not facility(cron, auth, authpriv, mail) and not filter(f_debug); };
你完成了。
另一种select是防止cronlogging除错误以外的任何内容:
更改/etc/default/cron :
# Or, to log standard messages, plus jobs with exit status != 0: # EXTRA_OPTS='-L 5' # # For quick reference, the currently available log levels are: # 0 no logging (errors are logged regardless) # 1 log start of jobs # 2 log end of jobs # 4 log jobs with exit status != 0 # 8 log the process identifier of child process (in all logs) # EXTRA_OPTS="-L 0"
默认情况下,EXTRA_OPTS行是“”
附录:
有人错误地编辑了这个答案,使它看起来好像-L 0会阻止cron从“完全”login。 这是不正确的。 请注意在我发布的文本中的0的描述:
# 0 no logging (errors are logged regardless)
或者只使用4:
# 4 log jobs with exit status != 0
OP希望避免每分钟一个cron作业开始的日志消息。 只logging错误或错误和非零退出状态是一个不错的select。