一种服务器诊断方法、装置及系统与流程

文档序号:11623503阅读:169来源:国知局
一种服务器诊断方法、装置及系统与流程

本发明涉及服务器诊断技术领域,更具体地说,涉及一种服务器诊断方法、装置及系统。



背景技术:

目前,服务器故障是困扰服务器厂商问题之一,妥善解决客户服务器故障是服务器厂商应尽义务。现有的解决服务器故障的方式,是通过客服人员到客户现场解决服务器故障,并将客户服务器的日志等信息拷贝回来,通过人工对日志进行分析。但这种解决故障的方式,客服人员出差成本高,需要付出较大的人力成本;采用人工分析方式,分析准确性效率不高;并且,服务器故障日志作为重要的数据源,没有合理利用开发。

因此,如何对服务器故障进行诊断,是本领域技术人员需要解决的问题。



技术实现要素:

本发明的目的在于提供一种服务器诊断方法、装置及系统,以实现对服务器故障进行诊断,减少诊断成本,提高故障诊断准确率。

为实现上述目的,本发明实施例提供了如下技术方案:

一种服务器诊断方法,包括:

从客户服务器获取服务器日志;

利用规则库中预存的关键字对所述服务器日志进行初步过滤,得到含有所述关键字的目标日志;

根据规则库中预存的故障规则,判断所述目标日志是否为故障日志;若是,则向所述客户服务器发送故障提示信息。

其中,所述从客户服务器获取服务器日志,包括:

通过bmc远程搜集客户服务器的服务器日志;或者,接收客户服务器通过日志搜集工具搜集的服务器日志。

其中,所述根据规则库中预存的故障规则,判断所述目标日志是否为故障日志,包括:

根据规则库中预存的故障规则,利用模糊匹配算法判断所述目标日志是否为故障日志。

其中,所述根据规则库中预存的故障规则,判断所述目标日志是否为故障日志,包括:

根据规则库中预存的故障规则,利用集合算法判断所述目标日志是否为故障日志。

一种服务器诊断装置,包括:

日志获取模块,用于从客户服务器获取服务器日志;

日志过滤模块,用于利用规则库中预存的关键字对所述服务器日志进行初步过滤,得到含有所述关键字的目标日志;

故障诊断模块,用于根据规则库中预存的故障规则,判断所述目标日志是否为故障日志;若为故障日志,则向所述客户服务器发送故障提示信息。

其中,所述日志获取模块包括:

日志搜集单元,用于通过bmc远程搜集客户服务器的服务器日志;

日志接收单元,用于接收客户服务器通过日志搜集工具搜集的服务器日志。

其中,所述故障诊断模块根据规则库中预存的故障规则,利用模糊匹配算法判断所述目标日志是否为故障日志。

其中,所述故障诊断模块根据规则库中预存的故障规则,利用集合算法判断所述目标日志是否为故障日志。

一种服务器诊断系统,包括客户服务器和诊断服务器,

所述诊断服务器,用于从客户服务器获取服务器日志;利用规则库中预存的关键字对所述服务器日志进行初步过滤,得到含有所述关键字的目标日志;根据规则库中预存的故障规则,判断所述目标日志是否为故障日志;若是,则向所述客户服务器发送故障提示信息。

其中,所述客户服务器,用于展示所述故障提示信息,并提供故障诊断报告导出接口。

通过以上方案可知,本发明实施例提供的一种服务器诊断方法,包括:从客户服务器获取服务器日志;利用规则库中预存的关键字对所述服务器日志进行初步过滤,得到含有所述关键字的目标日志;根据规则库中预存的故障规则,判断所述目标日志是否为故障日志;若是,则向所述客户服务器发送故障提示信息。可见,在本方案中,通过对客户服务器日志的获取及分析,能及时的对服务器故障进行定位,并发送提示信息,减少了日志诊断成本,提高对日志的分析效率及准确性;本发明还公开了一种服务器诊断装置及系统,同样能实现上述技术效果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例公开的一种服务器诊断方法流程示意图;

图2为本发明实施例公开的一种服务器诊断系统结构图;

图3为本发明实施例公开的一种服务器诊断装置结构示意图;

图4为本发明实施例公开的一种服务器诊断系统结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例公开了一种服务器诊断方法、装置及系统,以实现对服务器故障进行诊断,减少诊断成本,提高故障诊断准确率。

参见图1,本发明实施例提供的一种服务器诊断方法,包括:

s101、从客户服务器获取服务器日志;

其中,所述从客户服务器获取服务器日志,包括:

通过bmc远程搜集客户服务器的服务器日志;或者,接收客户服务器通过日志搜集工具搜集的服务器日志。

具体的,参见图2,为本实施例提供的服务器诊断系统结构图,在本实施例中,可通过云端的诊断服务器从各个客户的客户服务器上获取日志信息,以便利用日志信息对每个客户服务器进行诊断,判断是否存在故障;需要说明的是,在本实施例中对服务器日志的获取,可以实时获取,也可以预先设定获取周期,例如:每分钟获取一次,或者每小时获取一次等,再此并不具体限定。

具体的,在本实施例中对客户服务器日志的获取,可以通过诊断服务器利用bmc远程搜集客户服务器日志,也可以通过每个客户服务器内置的日志搜集工具进行获取,该日志搜集工具运行在客户服务器上,对客户服务器日志进行搜集后自动上传至诊断服务器,以便服务器进行分析诊断。需要说明的是,日志搜集工具可针对客户服务器不同操作系统采用不同的日志搜集方式,并且搜集的日志类型覆盖服务器几乎所有类型日志信息。

s102、利用规则库中预存的关键字对所述服务器日志进行初步过滤,得到含有所述关键字的目标日志;

具体的,在本实施例中,对日志的初步过滤是利用规则库中预先设定的关键字对客户日志进行初步过滤,找出可能存在故障的日志信息,并进行下一步的故障诊断;需要说明的是,不同类型的日志文件有不同的关键字,因此在对日志进行初步过滤时,需要根据日志的类型确定关键字;并且,在本实施例中的日志过滤采用字符串匹配算法,在日志中逐个查找关键字,并忽略大小写。

具体的,本方案中的规则库可以是用户自定义的故障规则,也可以是通过系统对服务器故障日志的搜集分析学习,总结出服务器故障原因所形成的规则。并且,规则库采用sqlite数据库,数据表中列有:主键,机器类型、故障位置、故障类型、故障关键字、故障日志等信息;并且,在客户服务器上向客户运维人员提供诊断接口,即在客户服务器上提供web操作界面,客户运维人员可以通过web操作界面,把客户服务器日志上传到云端分析服务器。并且在本方案中,还提供用于云端诊断系统进行管理的web管理界面,用于提供管理员用户管理,增加删除用户,修改用户密码,以及管理规则库,例如:对规则库进行增删改查等操作。

s103、根据规则库中预存的故障规则,判断所述目标日志是否为故障日志;若是,则向所述客户服务器发送故障提示信息。

具体的,在本实施例中,对日志进行初步过滤,在通过规则库中预存的故障规则确定每个客户服务器是否存在故障;若存在故障,则向相应的服务器发送故障信息,这时,客户运维人员便可通过web操作界面查看云端诊断结果,并可以将诊断结果导出。

基于上述实施例,所述根据规则库中预存的故障规则,判断所述目标日志是否为故障日志,包括:

根据规则库中预存的故障规则,利用模糊匹配算法判断所述目标日志是否为故障日志;或者,

根据规则库中预存的故障规则,利用集合算法判断所述目标日志是否为故障日志。

具体的,在本实施例中,可根据故障规则对待诊断日志按照模糊匹配算法和集合算法进行诊断,确定带诊断日志是否是故障日志;其中,模糊匹配是对待诊断日志进行模糊对比,当对比结果达到系统设置阈值,系统就确认是故障日志;集合算法是对规则库中需要多个条件才能确定故障的规则,采用集合算法来确认故障。系统诊断时,将待确认规则进行编号,存放在全局集合中,当规则库中规则编号是全局集合的子集时就可以确认这个故障成立。诊断出故障后,并可通过相应的客户服务器中的web操作界面向客户展示。

下面对本发明实施例提供的服务器诊断装置进行介绍,下文描述的服务器诊断装置上文描述的服务器诊断方法可以相互参照。

参见图3,本发明实施例提供的一种服务器诊断装置,包括:

日志获取模块100,用于从客户服务器获取服务器日志;

日志过滤模块200,用于利用规则库中预存的关键字对所述服务器日志进行初步过滤,得到含有所述关键字的目标日志;

故障诊断模块300,用于根据规则库中预存的故障规则,判断所述目标日志是否为故障日志;若为故障日志,则向所述客户服务器发送故障提示信息。

基于上述实施例,所述日志获取模块包括:

日志搜集单元,用于通过bmc远程搜集客户服务器的服务器日志;

日志接收单元,用于接收客户服务器通过日志搜集工具搜集的服务器日志。

基于上述实施例,所述故障诊断模块根据规则库中预存的故障规则,利用模糊匹配算法判断所述目标日志是否为故障日志。

基于上述实施例,所述故障诊断模块根据规则库中预存的故障规则,利用集合算法判断所述目标日志是否为故障日志。

参见图4,本发明实施例提供的一种服务器诊断系统,包括客户服务器400和诊断服务器500,

所述诊断服务器,用于从客户服务器获取服务器日志;利用规则库中预存的关键字对所述服务器日志进行初步过滤,得到含有所述关键字的目标日志;根据规则库中预存的故障规则,判断所述目标日志是否为故障日志;若是,则向所述客户服务器发送故障提示信息。

其中,所述客户服务器,用于展示所述故障提示信息,并提供故障诊断报告导出接口。

具体的,在本实施例中,客户服务器包括日志收集工具及web操作界面,日志搜集工具作为客户端程序运行在客户服务器上,对客户服务器日志进行搜;web操作界面是系统向客户运维人员提供的诊断接口,提供日志上传,诊断结果查看,报告导出等接口。在云端服务器提供日志过滤模块、故障诊断模块、故障规则库,以及web管理界面,web管理界面实现系统的管理功能。通过本方案的服务器故障诊断系统,客户能够方便的将故障服务器日志传到诊断服务器上;云端诊断服务器能够自动分析诊断客户服务器日志,定位服务器故障;并生成服务器诊断报告。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1