从 postfix 获取邮件传递率的统计数据

从 postfix 获取邮件传递率的统计数据

在工作中,我们的首席执行官正在制定一项计划,摆脱为我们进行垃圾邮件过滤等服务的服务提供商。

目前,我们的所有邮件都通过此服务转发出去,并且所有收到的电子邮件都通过此服务转发给我们。

这样设置的部分原因在于“可传递性”——像我们使用的大型电子邮件服务提供商不太可能被列入黑名单(我们在转向他们之前遇到过一个问题,某些 ISP 会因为我们向其客户发送过多电子邮件而阻止我们(这些电子邮件只是订单确认/发货电子邮件!))

如果我们搬走,我们的邮件服务器将直接投递邮件。我想建立某种监控系统,为我们提供有关我们发送了多少封邮件、我们将邮件发送到哪些域、退回率、定期退回邮件的服务器等的统计数据。

有谁知道这个问题的一个好的解决办法吗?

答案1

我已经使用 pflogsumm 大约 5 或 6 年了。它应该可以通过 apt-get 或 yum 轻松获得。

通常情况下,我会每周至少检查一次报告,以确保数字看起来正常,但实际上并没有太多内容。一些有用的部分:

Report based on information in /var/log/maillog
Postfix log summaries for Aug  6

Grand Totals
------------
messages

  83401   received
  85066   delivered
    113   forwarded
   3837   deferred  (20601  deferrals)
   2075   bounced
      2   rejected (0%)
      0   reject warnings
      0   held
      0   discarded (0%)

   1667m  bytes received
   1666m  bytes delivered
    324   senders
    103   sending hosts/domains
  19822   recipients
   3273   recipient hosts/domains

并且有助于监控交付延迟时间和延迟次数(这将是您被列入黑名单的第一个迹象):

Host/Domain Summary: Message Delivery (top 10)
 sent cnt  bytes   defers   avg dly max dly host/domain
 -------- -------  -------  ------- ------- -----------
  34164     1344m       0     0.1 s    1.0 s  xxxxxxxx.com
  10332    67337k      48    17.5 s    2.1 h  yahoo.com
   8023    49019k       1     0.9 s   22.3 m  gmail.com
   5618    36421k       0     0.6 s   13.0 s  hotmail.com
   4933    34041k       0     0.3 s   10.0 s  aol.com
   4049    23887k       0     0.0 s    1.0 s  cfmailtest.xxxxxxx
   1670    10819k       0     1.1 s   34.0 s  comcast.net
   1211     7266k       0     0.6 s    7.0 s  msn.com
    827     5540k       0     2.5 s   51.0 s  sbcglobal.net
    685     5415k      21    48.1 s    1.4 h  verizon.net

答案2

有多种方法可以实现这一点,通常通过日志文件摘要。您可以找到一个小列表在 Postfix 网站上这也许能为你指明正确的方向。

如果你安装了 logwatch,你可以添加其功能并以此方式获取统计数据

logwatch --service postfix --mailto [email protected]

如果你需要“漂亮的图表”,你可以从邮件图,它收集并绘制一段时间内的后缀活动图。

答案3

Munin stats Postfix Mailqueue 可以为您提供概览。

您可以使用 postfix 的 qshape 命令深入研究它,即:

qshape deferred | head -12

干杯

答案4

但请记住,大多数反垃圾邮件系统都会默默地丢弃您的电子邮件(或将其放在很少阅读的位置),因此您无法真正知道有多少封邮件实际到达(除非要求用户明确确认)。

相关内容