You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Exim邮件服务器月度收发邮件数量统计方法咨询

Exim邮件服务器月度收发邮件数量统计方法咨询

嘿,针对你的两台Exim服务器(一台专收、一台专发)的月度邮件统计需求,我给你整理了实用的操作方法,都是业内常用的思路:

首先得明确:Exim的邮件收发记录全存在日志文件里,默认路径一般是/var/log/exim/mainlog(Debian/Ubuntu系可能是/var/log/exim4/mainlog,RHEL/CentOS系大多是前者),而且旧日志通常会被压缩成.gz格式,统计时别忘了把这些也包含进去。

一、统计发送服务器的月度外发邮件数

你的发送服务器负责往外投递邮件,我们要找的是Exim成功把邮件发到远程服务器的记录,日志里对应的标志是=>(代表邮件已从服务器发出并完成投递)。

具体命令:

  • 如果日志都是未压缩的文本文件:
grep "2024-10" /var/log/exim/mainlog | grep "=>" | wc -l

解释一下:grep "2024-10"是过滤出2024年10月的所有日志行(如果你的日志用英文月份缩写,比如Oct,就改成grep "Oct");grep "=>"筛选出所有成功外发的记录;wc -l用来统计行数,也就是外发邮件的总数。

  • 如果有压缩的旧日志(比如mainlog.1.gz这类),用zgrep就能直接读取压缩文件,不用手动解压:
zgrep "2024-10" /var/log/exim/mainlog* | grep "=>" | wc -l

这个命令会自动处理所有压缩和未压缩的日志文件,不会遗漏。

二、统计接收服务器的月度收件数量

你的接收服务器负责收外部邮件,对应的日志标志是<=(代表Exim成功从远程服务器接收到邮件)。

具体命令:

  • 未压缩日志的情况:
grep "2024-10" /var/log/exim/mainlog | grep "<=" | wc -l

解释:grep "2024-10"过滤当月日志(同样,根据你的日志日期格式调整,比如日志是01/Oct/2024这种格式,就改成grep "/Oct/2024");grep "<="筛选出所有成功接收的邮件记录;wc -l统计总数。

  • 包含压缩日志的情况:
zgrep "2024-10" /var/log/exim/mainlog* | grep "<=" | wc -l

额外小提示:

如果你想要更精准的统计(比如排除退信、重试的记录),可以加额外的关键词过滤:

  • 发送服务器:grep "=>" | grep "completed",只统计完全成功投递的邮件;
  • 接收服务器:grep "<=" | grep "accepted",只统计被服务器正式接受的邮件。

备注:内容来源于stack exchange,提问作者Tom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 14:32:42