一种基于日志的系统性能分析方法和装置制造方法及图纸

技术编号:6097788 阅读:199 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种基于日志的系统性能分析方法和装置,该方法包括:预先配置用于匹配日志的日志匹配项,配置日志匹配项间的包含关系,并根据日志匹配项间的包含关系生成结果集树;对于每条日志,用该树中的节点对应的日志匹配项逐个进行匹配,并在匹配成功时提取日志中的系统性能参数,进而根据提取的系统性能参数对系统进行性能分析,并将分析结果存储在该节点中,从而实现对在线运行系统进行有效的跟踪。

【技术实现步骤摘要】

本专利技术涉及计算机技术,特别涉及一种基于日志的系统性能分析方法和装置
技术介绍
对系统进行性能分析,特别是对在线运行系统进行性能分析,是一件非常繁杂的 事情,需要分析大量的系统记录的日志信息,将分析结果与正常的情况对比,从而分析出性 能变化的异常情况。目前对日志信息的分析主要是采用半人工的方式,采用一种日志匹配工具,根据 用户的匹配规则找出匹配的起始和结束日志,再在起始和结束日志的范围内采用切片的方 式继续查找耗时的日志,从而找出系统性能的瓶颈。主要包括以下步骤1、根据用户的反馈,确定哪个功能耗时,并找到这个功能的起始和结束日志。2、在功能的起始和结束日志的范围内采用逐步分割的方式一步步缩小范围,同时 将每个部分的耗时与系统正常运行时该部分的耗时进行大致比较,找到耗时增加最大的部 分,从而定位系统的性能瓶颈。从上述步骤可以看出,现有技术的这种对日志信息的分析方法在很大程度上是人 工分析,既耗时复杂又很可能遗漏重要的信息;而且由于是人工进行的,很难将大量信息与 正常情况下的值进行比较,从而得到性能变化的情况。因此,目前采用的半人工方式很难对 在线运行的系统进行有效的跟踪。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种基于日志的系统性能分析方法,该方法能 够对在线运行系统进行有效的跟踪。为了实现上述目的,本专利技术提供了一种基于日志的系统性能分析方法,该方法预 先配置日志匹配项,配置日志匹配项间的包含关系,并根据日志匹配项之间的包含关系生 成结果集树;包括以下步骤A、从日志文件中读取一条日志,如果读取成功,将结果集树中根节点的第一个子 节点作为当前节点,则转至步骤B执行,如果读取失败,则保存结果集树中每个节点的统计 结果,本次系统性能分析结束;B、将所述读取的日志与当前节点对应的日志匹配项进行匹配,如果匹配成功,则 提取该条日志中的系统性能参数,进行系统性能统计,转至步骤A执行,如果未匹配成功, 则直接转至步骤C执行;C、从结果集树中的获取下一个节点作为新的当前节点,转至步骤B执行。所述的日志匹配项包括起始日志匹配规则和结束日志匹配规则;所述的系统性能参数是时间;所述的结果集树中的每个节点包括参数正在处理的记录,所述正在处理的记录 包括起始时间、结束时间;所述根据日志匹配项之间的包含关系生成结果集树时,进一步将结果集树中每个 节点对应的日志匹配项的起始日志匹配规则标记为未匹配;步骤B包括Bi、判断当前节点对应的日志匹配项的起始日志匹配规则是否已匹配,如果是,则 执行步骤B3,否则,执行步骤B2 ;B2、将当前节点对应的日志匹配项的起始日志匹配规则与所述读取的日志进行匹 配,如果匹配成功,则提取该条日志中的时间,将其记为当前节点正在处理的记录的起始时 间,并将当前节点对应的日志匹配项的起始日志匹配规则标记为已匹配,转至步骤A执行, 否则,转至步骤B3执行;B3、将当前节点对应的日志匹配项的结束日志匹配规则与所述读取的日志进行匹 配,如果匹配成功,则提取该条日志中的时间,将其记为当前节点正在处理的记录的结束时 间,并根据当前节点正在处理的记录的结束时间和起始时间进行系统耗时统计,将当前节 点对应的日志匹配项的起始日志匹配规则标记为未匹配,转至步骤A执行,否则,转至步骤 B3执行。结果集树中每个节点还包括参数记录数和总耗时;所述根据日志匹配项之间的包含关系生成结果集树时,进一步将结果集树中每个 节点的记录数和总耗时清零;步骤B3所述根据当前节点正在处理的记录的起始时间和结束时间进行系统耗时 统计的方法为计算当前节点正在处理的记录的结束时间和起始时间的差值,并将所述差 值累加进当前节点的总耗时;所述根据当前节点正在处理的记录的起始时间和结束时间进 行系统耗时统计之后,转至步骤A之前进一步包括将当前节点的记录数加1,将当前节点 正在处理的记录清空;所述将当前节点对应的日志匹配项的起始日志匹配规则标记为未匹 配时,进一步将以当前节点为根节点的子树中所有节点对应的日志匹配项的起始日志匹配 规则标记为未匹配。结果集树中的每个节点还包括最耗时的记录;所述最耗时的记录包括起始时 间和结束时间;所述根据解析规则生成结果集树时,进一步将结果集树中每个节点的最耗时的记录清空;所述将当前节点的记录数加1之后,将当前节点正在处理的记录清空之前,进一 步包括根据当前节点正在处理的记录的起始时间和结束时间判断当前节点正在处理的记 录是否是当前节点最耗时的记录,如果是,则将当前节点正在处理的记录记为当前节点的 最耗时的记录。根据当前节点正在处理的记录的起始时间和结束时间判断当前节点正在处理的 记录是否是当前节点最耗时的记录的方法为判断当前节点的最耗时的记录中的起始时间 和结束时间是否为空,如果是,则将当前节点正在处理的记录记为当前节点最耗时的记录, 否则,将当前节点正在处理的记录中结束时间和起始时间的差值与当前节点的最耗时的记 录中的结束时间和起始时间的差值进行比较,如果当前节点正在处理的记录中结束时间和 起始时间的差值较大,则将当前节点的正在处理的记录记为当前节点的最耗时的记录。步骤C包括Cl、判断当前节点对应的日志匹配项的起始日志匹配规则是否已匹配,如果是,则 执行步骤C2,否则,执行步骤C3 ;C2、判断当前节点是否有子节点,如果有,则将当前节点的第一个子节点作为新的 当前节点,转至步骤B,否则,转至步骤C4 ;C3、判断当前节点是否有右侧兄弟节点,如果有,则将当前节点的第一个右侧兄弟 节点作为新的当前节点,转至步骤B,否则,转至步骤C4;C4、判断当前节点是否有父节点,如果是,转至步骤C5,否则,获取下一个节点失 败,转至步骤A执行;C5、判断当前节点的父节点是否有右侧兄弟节点,如果是,则将当前节点的父节点 的第一个右侧兄弟节点作为新的当前节点,转至步骤B执行,否则,将当前节点的父节点设 置为当前节点,转至步骤C4执行。所述预先配置日志匹配项和日志匹配项间的包含关系时,进一步配置了是否将当 前统计结果作为基线的标记;步骤A所述本次系统性能分析结束之前进一步包括根据设置的是否将当前统计 结果作为基线的标记判断是否需要将当前统计结果作为基线,如果是,则根据结果集树中 的每个节点的当前统计结果生成基线。本专利技术还提供了一种基于日志的系统性能分析装置,该装置能够对在线运行系统 进行有效的跟踪。该装置包括配置单元、日志获取单元、匹配单元,节点获取单元、结果保 存单元;所述的配置单元,用于预先配置日志匹配项,配置日志匹配项间的包含关系,并根 据配置的日志匹配项间的包含关系生成结果集树;所述的日志获取单元,用于接收到匹配单元发来的获取日志通知时,从日志文件 中读取一条日志,如果读取成功,将读取的日志发送到匹配单元;如果读取失败,则通知结 果保存单元保存本次系统性能分析的统计结果;所述的匹配单元,用于在开始进行系统性能分析时,通知日志获取单元获取日志; 用于在接收到日志获取单元发来的日志后,将结果集树中根节点的第一个子节点作为当前 节点;用于将当前节点对应的日志匹配项与接收到的日志进行匹配,如果匹配成功,则提取 该条日志中的系统性能参数,进行系统性能统计,并通知日志获取单元获取日志,如果匹配 失败,则通知节点获取单元获取下一个节点;用于本文档来自技高网...

【技术保护点】
1.一种基于日志的系统性能分析方法,其特征在于,预先配置日志匹配项,配置日志匹配项间的包含关系,并根据日志匹配项之间的包含关系生成结果集树;该方法包括:A、从日志文件中读取一条日志,如果读取成功,将结果集树中根节点的第一个子节点作为当前节点,则转至步骤B执行,如果读取失败,则保存结果集树中每个节点的统计结果,本次系统性能分析结束;B、将所述读取的日志与当前节点对应的日志匹配项进行匹配,如果匹配成功,则提取该条日志中的系统性能参数,进行系统性能统计,转至步骤A执行,如果未匹配成功,则直接转至步骤C执行;C、从结果集树中获取下一个节点作为新的当前节点,转至步骤B执行。

【技术特征摘要】

【专利技术属性】
技术研发人员:余天舒
申请(专利权)人:杭州华三通信技术有限公司
类型:发明
国别省市:86

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1