我最近接管了一个相当规模的网络(10 个物理站点上有 900 个 FreeBSD 或 Linux 主机),我们在那里收到大量发往 root 的电子邮件,其中大部分来自 cfengine (v2)。多年来,我们还安装了许多 cron 作业,其中一些会不时发出噪音(有些每次运行时都会发出噪音!)多年来,团队中的系统管理员已经逐渐接受这些消息并将其过滤到 /dev/null,因此很少被阅读。
显然这不是理想的,我们应该解决所有噪音问题 - 我们会这样做。但首先我想做一些事情来解决这个问题,并尝试指出最“嘈杂”的程序,并记录电子邮件数量的统计数据,以便我们可以看到我们所做的更改的统计数据。
我当时想设置一台机器,接收这些电子邮件的副本,然后将它们处理到数据库中,然后我会在数据库中统计我们收到的类似消息的重复次数。目前有很多现有的系统可以汇总传统的日志文件,但唯一一个与我们追求的相似的系统是哨兵,但我必须编写一些处理程序才能使其工作。如果没有类似的东西,我可以自己写一些东西。
有没有其他人遇到过此类问题,并且知道汇总大量错误电子邮件报告并对其进行分析的解决方案?我正在寻找:
- 每小时或每天的电子邮件数量统计
- 最常见邮件列表,按邮件内容、主题或发件人:地址列出
- 还有其他统计数据可以表明哪些简单的变化可能会对消息量产生最大的影响
答案1
我不得不应对一个非常相似的问题。
就我而言,我收到了来自 CFEngine 的不同电子邮件,具体取决于它们是来自 cron 运行的 cf-agent,还是从 cf-exec.d 运行
我最终做的是删除了 cron cf-agent 调用,并用一个仅确保 cfengine3 服务正在运行的脚本替换它。
现在所有的电子邮件都来自 cf-execd,这使我的电子邮件规则更加完善。虽然这并非您所期望的,但它确实让我的一天更加易于管理。