当前位置: 技术问答>java相关
如何对邮件进行统计
来源: 互联网 发布时间:2015-08-09
本文导语: 我用java开发一个发邮件的系统,要用它连到smtp server发邮件,比如sendmail, qmail, iis的smtp等等。现在我需要对下列邮件进行统计,已发的email,被对方退回的email,由于email本身错误而无法发送的email,而且还希望能获...
我用java开发一个发邮件的系统,要用它连到smtp server发邮件,比如sendmail, qmail, iis的smtp等等。现在我需要对下列邮件进行统计,已发的email,被对方退回的email,由于email本身错误而无法发送的email,而且还希望能获得被退回的和死信的subject以进行分类,不知可不可以做到,希望高手能给个思路,有源代码或例子就最好了
另外我现在用的是qmail,希望高手能结合qmail给我指点,如果qmail无法实现,也可以说说其他的smtp server如何实现我上面所说的功能
谢谢各位
另外我现在用的是qmail,希望高手能结合qmail给我指点,如果qmail无法实现,也可以说说其他的smtp server如何实现我上面所说的功能
谢谢各位
|
实现起来比较难:)
qmail这样发信的:当你把信提交到qmail服务器,qmail把你的信放入一个队列中,不是马上发信,当然,这延迟是很快的,当一封信提交给远程的smtp服务器市,qmail建立一个进程跟远程的服务器通信,等待远程服务器返回的信息,当然,这些信息就包含了qmail发送这封信是否成功,是否被对方退回,是否其他原因,我以前想作统计的,但是最后还是没有做,我建议您仔细研究qmail的日志,说不定从这里面可以得到你需要的信息.
假如你的启动文件是这样写的:
usr/local/bin/tcpserver -v -x /etc/tcp.smtp.cdb 0 smtp
/var/qmail/bin/qmail-smtpd 2>&1 | /var/qmail/bin/splogger
smtpd 3 &
可以知道,qmail出来的日志交给了/var/qmail/bin/splogger处理,我设想的是,qmail出来的日志我可以用自己的程序处理,从日志中得到你需要的信息,再而统计出来,然后再把这些信息交给/var/qmail/bin/splogger写倒系统日志里面:)
以上是我的一个设想,具体我没有实现过,good luck!!!
我的QQ:49074333
qmail这样发信的:当你把信提交到qmail服务器,qmail把你的信放入一个队列中,不是马上发信,当然,这延迟是很快的,当一封信提交给远程的smtp服务器市,qmail建立一个进程跟远程的服务器通信,等待远程服务器返回的信息,当然,这些信息就包含了qmail发送这封信是否成功,是否被对方退回,是否其他原因,我以前想作统计的,但是最后还是没有做,我建议您仔细研究qmail的日志,说不定从这里面可以得到你需要的信息.
假如你的启动文件是这样写的:
usr/local/bin/tcpserver -v -x /etc/tcp.smtp.cdb 0 smtp
/var/qmail/bin/qmail-smtpd 2>&1 | /var/qmail/bin/splogger
smtpd 3 &
可以知道,qmail出来的日志交给了/var/qmail/bin/splogger处理,我设想的是,qmail出来的日志我可以用自己的程序处理,从日志中得到你需要的信息,再而统计出来,然后再把这些信息交给/var/qmail/bin/splogger写倒系统日志里面:)
以上是我的一个设想,具体我没有实现过,good luck!!!
我的QQ:49074333