我已经试了好几天了,但仍然在挣扎。
该脚本的目标是在多个服务器(特别是29个)上执行实时日志监控,并将服务器之间的登录失败记录关联起来。服务器的日志将在每天23:59:59进行压缩,新的日志从0点开始。
我的想法是在每个服务器上使用tail -f | grep "failed password" | tee centralized_log,通过循环遍历所有服务器名称来激活,在后台运行,并将登录失败记录输出到集中日志中。但这不管用。它创建了许多守护进程,一旦我终止脚本,这些守护进程就会变成僵尸。
我也在考虑每隔几分钟做一次tail。但是随着日志变得越来越大,处理时间也会增加。如何将指针设置为指向前一个tail停止的位置?
因此,您能否建议一种更好的工作方式来进行多个日志的监控和关联。除非完全必要,否则不鼓励额外安装。
发布于 2013-07-03 13:35:43
如果您的日志正在通过syslog,并且您使用的是rsyslogd,那么您可以在每台计算机上配置syslog,以便将您感兴趣的特定消息转发到一个(或两个)集中式日志服务器,使用如下属性匹配:
:msg, contains, "failed password"有关如何设置可靠系统日志转发的更多详细信息,请参阅rsyslog documentation。
https://stackoverflow.com/questions/17439188
复制相似问题