虽然计算机软硬件的快速发展已经极大提高了应用程序的可靠性,但是在大型集群中仍然存在大量的软件错误和硬件故障。系统要求7x24小时不间断运行,因此,对这些系统进行持续监控至关重要。这就要求我们就被从系统中持续采集系统运行日志,业务运行日志的能力,并能快速的分析和监控当前状态曲线的异常,一旦发现异常,能第一时间将信息送到相关人员手中。
EGADS (Extensible Generic Anomaly Detection System) 是一个开源的 Java 包,用于在大规模时间序列数据中自动检测异常。
EGADS 旨在包括一组异常检测技术,可以应用到一个包的许多用例中,且只唯一的依赖是 Java。EGADS 首先创建时间序列模型,用于计算在时间 t 的期望值。EGADS 自动确定阈值 E 并输出最有可能的异常。 EGADS 库可用于大部分情况下的上下文,检测出离群性和时间序列的改变点,这些可能含有各种即时性、趋势和噪声组件。