预测复杂系统故障的应用系统的制作方法

文档序号:9826199阅读:502来源:国知局
预测复杂系统故障的应用系统的制作方法
【技术领域】
[0001]本发明涉及系统故障分析技术领域,更具体地说,涉及一种预测复杂系统故障的 应用系统。
【背景技术】
[0002] 作为大型IT企业用来支撑所提供服务的业务载体,应用系统本身的运行情况在很 大程度上能够体现在其运行过程中产生的日志文件中,而对于这些日志文件的检查监控更 多的发生在系统已经发生BUG或者系统性能已经受到影响之后,此时系统故障引起的损失 已经发生。当前,对于日志文件的使用方式而言,更多的使用是集中在系统问题产生后的故 障追查及原因分析上。
[0003] 另一方面,现在IT系统越来越复杂,日志文件也越来越庞大,日志内容也更加复 杂,进行日志检查时,消耗的人力物力持续增多。而发现故障时,产生故障的地方可能已经 过期,这时再去检查日志文件就不能及时地发现问题所在,或者应用系统的故障发生是一 个量变到质变的过程,忽视了对量变过程的监控就浪费了提前发现隐患的机会。
[0004] 因此,本领域技术人员期望获得一种能够依据日志文件来预测系统故障的技术方 案。

【发明内容】

[0005] 本发明的目的在于提供一种能够依据日志文件来预测系统故障的技术方案。
[0006] 为实现上述目的,本发明提供一种技术方案如下: 一种预测复杂系统故障的应用系统,其中复杂系统包括多个业务子系统,应用系统包 括如下模块:日志采集模块,与各业务子系统在通信上耦合,用于实时采集各业务子系统的 日志文件并为日志文件分别加上时间标签和/或主机标签;日志抓取模块,与日志采集模块 在通信上耦合,用于在至少一时间窗口内抓取各业务子系统的日志文件;分析比对模块,与 日志抓取模块在通信上耦合,基于各业务子系统的日志文件计算时间窗口内复杂系统的故 障指数;以及报告模块,与分析比对模块在通信上耦合,用于预测复杂系统故障和/或报告 复杂系统的故障指数。
[0007] 优选地,故障指数包括异常频度和/或异常比率,其中,异常频度表示复杂系统在 一时间窗口内出现异常的次数,异常比率表示该时间窗口对应的异常频度与历史时间窗口 对应的异常频度的比值。
[0008] 优选地,在异常比率满足异常比率阈值范围时,报告模块预测复杂系统发生故障 的概率高。
[0009] 优选地,异常频度的计算因子包括时间窗口内日志文件中出现错误、失败或失效 记录的次数、出现警告信息的次数、出现提示信息的次数、和/或出现用户定义信息的次数。
[0010] 优选地,时间窗口包括长度互不相同的多个,分析比对模块分别计算各时间窗口 内复杂系统的故障指数。
[0011] 本发明所提供的预测复杂系统故障的应用系统,能够实时地采集复杂系统各业务 子系统的日志文件,并依据从日志文件中提取的相关信息来计算复杂系统10的故障指数、 或预测复杂系统10接下来发生故障的概率,进而向用户报告或预警,使得用户在复杂系统 10发生故障前就能够得到警示信息,从而作出一定程度的防范措施,以减少损失。该应用系 统实现方式简单、实现成本低。
【附图说明】
[0012] 图1示出本发明第一实施例提供的预测复杂系统故障的应用系统的模块结构示意 图。
【具体实施方式】
[0013] 需要说明的是,在本发明各实施例中,复杂系统10包括多个业务子系统101、102以 及103。各子系统101、102以及103通常分别在单独的服务器上实现,各子系统共同完成复杂 系统10的业务流程。各子系统分别记录自身的工作日志,各工作日志能够体现相应子系统 的运营情况。
[0014] 如图1所示,本发明第一实施例提供一种预测复杂系统故障的应用系统20,其包括 日志采集模块201、日志抓取模块202、分析比对模块203以及报告模块204。
[0015]其中,日志采集模块201、日志抓取模块202、分析比对模块203以及报告模块204可 以分别在单独的服务器上实现,也可以在一个共同的服务器上实现。优选情况下,分析比对 模块203在一台单独的服务器上实现,以优先满足计算速度的要求。
[0016]日志采集模块201与复杂系统10的多个业务子系统101、102以及103在通信上耦 合,日志采集模块20实时采集各业务子系统101、102以及103的日志文件,并将各业务子系 统101、102以及103的日志文件加上时间标签和/或主机标签,时间标签可对应于复杂系统 10的当前系统时间,主机标签可对应于复杂系统10的子系统所在的主机标识。
[0017] 具体地,日志采集模块201可以通过远程工具分布式地对各业务子系统进行实时 采集、获取其日志文件,在实时采集的同时,每隔固定时间为日志文件打上时间标签和/或 主机标签,每个日志文件具有不同的标签,从而每一日志文件都具有唯一性标识,这些标签 可以为日志抓取模块202、分析比对模块203所调取并识别,以便于后续处理。
[0018] 日志抓取模块202与日志采集模块201在通信上耦合,用于在至少一个时间窗口内 抓取各业务子系统101、102以及103的日志文件。
[0019] 其中,日志抓取模块202将抓取到的日志文件传输到分析比对模块203所在的单独 服务器上。依照一种具体实现,日志抓取模块202通过脚本实时跟踪(tail)各业务子系统的 日志文件,并将一个时间窗口内(或两个时间标签之间)的各业务子系统1〇1、1〇2以及103日 志文件实时传输到分析比对模块203所在的单独服务器上。
[0020] 具体地,时间窗口可以包括长度互不相同的多个,例如,时间窗口长度可以为1分 钟、1小时、24小时等等。因而,日志抓取模块202可以抓取离复杂系统10的当前系统时间最 近的1分钟内各业务子系统101、102及103的日志文件,并将该最近的1分钟作为待监控时间 窗口,日志抓取模块202还可以抓取最近的1小时内各业务子系统101、102及103的日志文 件,也可以抓取最近的24小时内各业务子系统101、102及103的日志文件,并将它们作为历 史时间窗口。可以理解,待监控时间窗口也可以为离复杂系统10的当前系统时间最近的1小 时、24小时等。
[0021 ]分析比对模块203与日志抓取模块202在通信上耦合,以基于各业务子系统101、 102以及103的日志文件来计算复杂系统10的故障指数。
[0022]具体地,故障指数包括异常频度和/或异常比率。异常频度表示一时间窗口(例如, 待监控时间窗口)内出现异常的次数,异常比率表示该时间窗口对应的异常频度与一历史 时间窗口对应的异常频度的比值。待监控时间窗口的长度与历史时间窗口的长度可以不 同。
[0023]历史时间窗口可以包括多个,例如可以包括:不包含待监控时间窗口的、离复杂系 统10的系统时间最近的1小时(本文中也称为时视窗);不包含时视窗的、离复杂系统10的系 统时间最近的24小时(本文中也称为日视窗);以及不包含日视窗的、之前所有时间。优选情 况下,待监控时间窗口与历史时间窗口不重合,不同历史时间窗口之间也互不重合。
[0024] 异常频度的计算因子包括在一时间窗口内各业务子系统的日志文件中出现错误、 失败或失效记录的次数wl、出现警告信息的次数w2、出现提示信息的次数w3、和/或出现用 户定义信息的次数w4。
[0025]
其中,AI为出现各种异常的总次数,L为时间窗口的长度,wl为日志文件中出现错误、失败或失 效记录
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1