如何从系统日志中抑制 Postfix anvil 统计数据?

squ*_*cle 5 postfix logging syslog

在通过我的邮件服务器发送的每封电子邮件之后,postfix/anvil附加如下内容:

Nov  9 15:09:11 keutenberg postfix/anvil[30006]: statistics: max connection rate 1/60s for (smtp:103.28.42.75) at Nov  9 15:02:42
Nov  9 15:09:11 keutenberg postfix/anvil[30006]: statistics: max connection count 1 for (smtp:103.28.42.75) at Nov  9 15:02:42
Nov  9 15:09:11 keutenberg postfix/anvil[30006]: statistics: max message rate 1/60s for (smtp:103.28.42.75) at Nov  9 15:02:43
Nov  9 15:09:11 keutenberg postfix/anvil[30006]: statistics: max cache size 1 at Nov  9 15:02:42
Run Code Online (Sandbox Code Playgroud)

我明白为什么要记录这些消息(我设置了限制),但我找不到任何方法来更改anvil的日志级别(即,禁止来自 的这些信息性消息mail.log)。是否有我可以使用的设置main.cf来禁用这些统计消息?我宁愿在源头阻止它们,也不愿通过系统日志设置来抑制它们。

小智 7

如果要更改日志的频率,可以anvil_status_update_timemain.cf. 默认值为 600 秒。http://www.postfix.org/postconf.5.html#anvil_status_update_time

两个小时对我来说效果更好,比使用默认的 10 分钟要好,但它显然会因环境而异。

anvil_rate_time_unit = 60s
anvil_status_update_time =  2h
Run Code Online (Sandbox Code Playgroud)

此外,为了解决我在记录传入邮件时出现长时间延迟的问题,我必须配置以下设置。如果您发现收到的邮件日志没有在应该更新的时候更新,请尝试以下操作:

smtpd_error_sleep_time = 2s
smtpd_soft_error_limit = 10
smtpd_hard_error_limit = 20
Run Code Online (Sandbox Code Playgroud)

*如果您的服务器每 600 秒收到的电子邮件少于 1 封

默认情况下,anvil 守护进程在退出时会记录统计信息。由于默认空闲时间为 600秒,如果没有收到电子邮件您将继续每 10 分钟收到一次砧座日志

这可以通过添加-o max_idle到更长的时间跨度master.cf

anvil     unix  -       -       n       -       1       anvil -o max_idle=3600s
Run Code Online (Sandbox Code Playgroud)