把许多电子邮件分成一组?

我们正在运行SGE作业调度系统。 如果任务被取消,用户可以让SGE发送邮件。 如果用户有大量的数组作业(比如说100000000个条目)并且一次杀掉所有这些数据(使用qkill -u USER很容易),那么用户的邮件帐户就会被电子邮件所淹没。

所有电子邮件似乎都是从[email protected]发送的,并具有"Job <numeric job id> (<name of script>) Killed"

所有电子邮件都是通过configuration为邮件代理的postfix实例运行的,因为它从所有节点收集作业,然后将其转发给组织的实际邮件主机。

我想达到以下目的:

  • 将所有电子邮件保留30秒,直到转发。
  • 考虑最近30秒的电子邮件,并检查是否有任何重复(相同的To: ,主题只在数字作业ID不同)。
  • 如果收到超过10封类似的电子邮件,那么:
    • 创build一个“折叠”的电子邮件与主题“折叠电子邮件的许多工作()杀”
    • 显示前5个电子邮件的正文
    • 然后显示"And <number> similar emails were dropped"
    • 将电子邮件时间设置为当前时间并放入队列。
  • 在这种情况下多次发生,上面的<number>应相应增加。
  • 然后应该发送超过30秒的电子邮件。

我想我没有find正确的关键字,但我找不到正确的地方挂在这样的脚本。 这样的脚本会是一个好的位置?

我写这样一个脚本没有问题,但如果有人知道现有的东西,我会有兴趣了解这个。