大规模分布系统中的日志文件
时间:2020-03-05 18:45:14 来源:igfitidea点击:
我在网格和HPC领域中进行了大量工作,而在分布于数百个(有时甚至数千个)服务器的系统中,我们面临的最大挑战之一就是分析日志文件。
当前,日志文件被本地写入每个刀片上的磁盘,但是我们也可以考虑使用UDP Appender发布日志信息并集中收集。
鉴于目标是能够尽可能接近实时地发现问题,我们该怎么办?
解决方案
回答
首先,使用NTP同步系统中的所有时钟。
其次,如果要在单个位置(如我们提到的UDP添加程序)收集日志,请确保日志具有足够的信息以提供实际帮助。我将至少包括生成日志的服务器,发生时间和消息。如果存在任何类型的事务处理ID或者作业ID类型的概念,请同时添加。
由于我们提到了UDP Appender,所以我猜我们正在使用log4j(或者其中之一)。 Log4j具有MDC类,该类允许通过处理线程传递额外的信息。它可以帮助收集一些额外的信息并将其传递。
回答
我们在使用Apache吗?如果是这样,我们可以看看mod_log_spread,尽管我们可能拥有太大的基础架构以致于无法维护。另一个选择是查看"广播"或者"多播"日志消息,并让专用的日志服务器订阅这些提要并进行整理