将日志从一台服务器实时复制到另一台服务器

将日志从一台服务器实时复制到另一台服务器

我们在 Debian 6.0 机器上有一个身份验证守护进程,每秒大约生成 4-6 行\条目的日志。出于法律原因,此日志文件必须先写入本地磁盘,然后我们才能将其备份或传输到任何地方。这些日志由守护进程本身每 2 小时轮换一次。

我想实现一个系统,将日志输入到数据库中并查看 syslog-ng(服务记录到 syslog-ng,然后 syslog-ng 将条目写入数据库和磁盘),但是这被拒绝了,因为如果 syslog-ng 进程出于某种原因失败,我们将丢失日志条目。

我一直在尝试使用 rsync 和 cron 设置为每 5 分钟左右同步一次,但接收端显然需要日志的完整副本以供 rsync 进行“比较”,而我真正想要的是上次检查之间的差异。

有没有一种合适的方法可以让我获取自上次检查以来日志文件中的更改(最好从远程机器上),然后将这些行提供给脚本或直接提供给数据库?

答案1

使用 有什么问题tail -F <logfile> | db-import-script吗?坦白说,您引用的“法律原因”似乎毫无意义,甚至对于律师来说也是如此,因此我倾向于寻求澄清法规的意图,然后努力做到这一点,而不是试图与那些可能没有能力评估实施是否合适的人一起审查实施细节。如果他们具备技术能力,然后告诉他们给你设计图,你就会按照规格去实现它。

答案2

我必须坦率地承认我是他们最大的客户之一,但对于这种事情,我建议你至少考虑一下Splunk- 如果没有其他原因它可以免费并且我们使用它来做几乎与你正在做的事情完全相同的事情。

相关内容