一种BMC监控可恢复ECC错误的方法、装置及设备与流程

文档序号:16207643发布日期:2018-12-08 07:19阅读:988来源:国知局
本发明涉及服务器安全
技术领域
:,特别是涉及一种bmc监控可恢复ecc错误的方法、装置、设备以及计算机可读存储介质。
背景技术
:随着大数据和云计算的发展,高性能的服务器就越来越重要,内存方面,用ecc内存取代普通内存,可以使整个服务器系统在工作时更趋于安全稳定。ecc内存主要会发生两种错误:可恢复ecc(correctableecc)错误和不可恢复ecc(uncorrectableecc)错误,发生这两种错误时,bios(基本输入输出系统)会向bmc监控系统发送该错误消息,bmc以此记录该错误。现有技术中,bmc监控内存的correctableecc报警的方法为:cpu获取ecc内存的数据,比较前后的ecc校验码,若发生错误则会定为错误位置并进行纠正;纠正完成后,会向操作系统发送该日志消息;bios从操作系统中获取到该消息后,会组织ipmi命令,将此错误告知bmc,bmc收到bios的命令后,解析命令,并记录sel日志。当内存发生大量correctableecc时,bios就会发送给bmc大量ipmi命令,告知bmc内存发生了correctableecc错误,这样bmc就记录了大量的sel日志,但是sel日志的大小是有限的,这样如果超出sel日志文件的大小,就会将之前的日志覆盖掉,这样可能会导致很多有用的日志被重复的correctableecc日志覆盖掉,当服务器发生故障时,不利于维护人员分析问题。综上所述可以看出,如何优化bmc监控可恢复ecc错误的报警机制是目前有待解决的问题。技术实现要素:本发明的目的是提供一种bmc监控可恢复ecc错误的方法、装置、设备以及计算机可读存储介质,已解决现有技术中bmc监控可恢复ecc错误报警机制会产生大量sel日志的问题。为解决上述技术问题,本发明提供一种bmc监控可恢复ecc错误的方法,包括:在bmc监控系统首次接收到可恢复ecc错误信息时,开始计时;若在第一预设时长内,所述bmc监控系统再次接收到所述可恢复ecc错误信息,则记录一条可恢复ecc错误的触发日志;完成所述可恢复ecc错误的触发日志的记录后,重新开始计时,判断在第二预设时长内是否再次收到所述可恢复ecc错误信息;若未收到,则判定所述可恢复ecc错误已恢复,从而发送一条可恢复ecc错误的解除日志,并停止计时。优选地,所述判断在第二预设时长内是否再次收到所述可恢复ecc错误信息后还包括:若在所述第二预设时长内再次收到所述可恢复ecc错误信息,则循环重新开始计时,判断在第二预设时长内是否再次收到所述可恢复ecc错误信息的操作,直至所述bmc监控系统不再收到所述可恢复ecc错误信息。优选地,所述在bmc监控系统首次接收到可恢复ecc错误信息时,开始计时包括:在bmc监控系统首次接收到可恢复ecc错误信息时,开启定时器开始计时。优选地,所述在bmc监控系统首次接收到可恢复ecc错误信息时,开始计时后还包括:若在所述预设时长内,所述bmc监控系统未收到同一可恢复ecc错误信息,则判定首次接收到的所述可恢复ecc错误为误报,并关闭所述定时器,停止计时。优选地,所述若在第一预设时长内,所述bmc监控系统再次接收到所述可恢复ecc错误信息,则记录一条可恢复ecc错误的触发日志包括:若在预设计时时长内,所述bmc监控系统再次接收到同一可恢复ecc错误信息,则记录一条触发可恢复ecc错误的sel日志。本发明还提供了一种bmc监控可恢复ecc错误的装置,包括:计时模块,用于在bmc监控系统首次接收到可恢复ecc错误信息时,开始计时;记录模块,用于若在第一预设时长内,所述bmc监控系统再次接收到所述可恢复ecc错误信息,则记录一条可恢复ecc错误的触发日志;判断模块,用于完成所述可恢复ecc错误的触发日志的记录后,重新开始计时,判断在第二预设时长内是否再次收到所述可恢复ecc错误信息;恢复模块,用于若未收到,则判定所述可恢复ecc错误已恢复,从而发送一条可恢复ecc错误的解除日志,并停止计时。优选地,还包括循环模块,用于若在所述第二预设时长内再次收到所述可恢复ecc错误信息,则循环重新开始计时,判断在第二预设时长内是否再次收到所述可恢复ecc错误信息的操作,直至所述bmc监控系统不再收到所述可恢复ecc错误信息。优选地,所述第一计时模块具体用于:在bmc监控系统首次接收到可恢复ecc错误信息时,开启定时器开始计时。本发明还提供了一种bmc监控可恢复ecc错误的设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现上述一种bmc监控可恢复ecc错误的方法的步骤。本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述一种bmc监控可恢复ecc错误的方法的步骤。本发明所提供的bmc监控可恢复ecc错误的方法,在bmc监控系统首次收到可恢复ecc错误信息时,开始计时;判断在第一预设时长内,所述bmc监控系统是否再次收到相同的可恢复ecc错误信息,所述bmc监控系统则记录一条可恢复ecc错误的触发日志;完成所述触发日志的记录后,重新开始计时,判断在第二预设时长内所述bmc监控系统是否再次接收到相同可恢复ecc错误信息;若未收到,则判断所述可恢复ecc错误已恢复,从而记录一条可恢复ecc错误的解除日志,并停止计时。本发明所提供的bmc监控可恢复ecc错误的方法,在首次收到可恢复ecc错误信息时,不记录触发日志,再第二次收到相同可恢复ecc错误信息时,记录一条可恢复ecc错误的触发日志,防止了服务器对可恢复ecc错误信息的误报。在完成所述触发日志的记录后,判断在第二预设时长内是否再次收到相同的可恢复ecc错误信息,即判断所述可恢复ecc错误信息是否已经解决;在所述第二预设时长内所述bmc监控系统未收到相同的可恢复ecc错误信息时,判定所述可恢复ecc错误已经恢复,则所述bmc监控系统记录一条可恢复ecc错误的解除日志。本发明所提供的方法,优化了bmc监控系统处理内存可恢复ecc错误报警的机制,由现有技术中每次可恢复ecc错误均记录一条触发日志变为某一时间段只记录一条触发日志,且当超出上次发生可恢复ecc错误一定时间后,产生一条解除可恢复ecc错误的日志,从而减少了大量可恢复ecc错误的触发日志产生,减小了对bmc监控系统的sel日志文件空间的占用,有效减少了有用日志被占用的风险,在服务器发生故障时,可以使运维人员更加准确的分析问题,提高了工作效率。附图说明为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明所提供的bmc监控可恢复ecc错误的方法的第一种具体实施例的流程图;图2为本发明所提供的bmc监控可恢复ecc错误的方法的第二种具体实施例的流程图;图3为本发明实施例提供的一种bmc监控可恢复ecc错误的装置的结构框图。具体实施方式本发明的核心是提供一种bmc监控可恢复ecc错误的方法、装置、设备以及计算机可读存储介质,减少了大量可恢复ecc错误的触发日志产生,减小了对bmc监控系统的sel日志文件空间的占用。为了使本
技术领域
:的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。请参考图1,图1为本发明所提供的bmc监控可恢复ecc错误的方法的第一种具体实施例的流程图;具体操作步骤如下:步骤s101:在bmc监控系统首次接收到可恢复ecc错误信息时,开始计时;步骤s102:若在第一预设时长内,所述bmc监控系统再次接收到所述可恢复ecc错误信息,则记录一条可恢复ecc错误的触发日志;若在预设计时时长内,所述bmc监控系统再次接收到同一可恢复ecc错误信息,则记录一条触发可恢复ecc错误的sel日志。在本实施例中,所述第一预设时长可以为10分钟、15分钟等,可以根据实际应用设置。步骤s103:完成所述可恢复ecc错误的触发日志的记录后,重新开始计时,判断在第二预设时长内是否再次收到所述可恢复ecc错误信息;在本实施例中,所述第二预设时长可以与第一预设时长相同,也可以与第一预设时长不同。步骤s104:若未收到,则判定所述可恢复ecc错误已恢复,从而发送一条可恢复ecc错误的解除日志,并停止计时。由于可恢复ecc错误并不是不可恢复性的严重性错误,且可以被cpu自动纠正;因此本实施例所提供的bmc监控可恢复ecc错误的方法,优化了bmc监控系统处理内存可恢复ecc错误报警的机制,由现有技术中每次可恢复ecc错误均记录一条触发日志变为某一时间段只记录一条触发日志,且当超出上次发生可恢复ecc错误一定时间后,产生一条解除可恢复ecc错误的日志,从而减少了大量可恢复ecc错误的触发日志产生,减小了对bmc监控系统的sel日志文件空间的占用,有效减少了有用日志被占用的风险。基于上述实施例,在本实施例中,在所述bmc监控系统首次接收到可恢复ecc错误信息时,开启定时器,开始定时,在第一预设时长内,判断所述bmc监控系统是否再次接收到可恢复ecc错误,若未收到,则判断所述bmc监控系统首次接收到的可恢复ecc错误信息为误报。在本实施例中,以所述第一预设时长和所述第二预设时长相同,均为十分钟为例解释说明。请参考图2,图2为本发明所提供的bmc监控可恢复ecc错误的方法的第二种具体实施例的流程图;具体操作步骤如下:步骤s201:在bmc监控系统首次接收到可恢复ecc错误信息时,开启定时器定时10分钟,开始计时;步骤s202:若在10分钟内,所述bmc监控系统未收到同一可恢复ecc错误信息,则判定首次接收到的所述可恢复ecc错误为误报,并关闭所述定时器,停止计时;步骤s203:若在10分钟内,所述bmc监控系统再次接收到所述可恢复ecc错误信息,则记录一条可恢复ecc错误的触发日志;步骤s204:完成所述可恢复ecc错误的触发日志的记录后,清零所述定时器重新开始计时,判断在10分钟内是否再次收到所述可恢复ecc错误信息;步骤s205:若在10分钟内再次收到所述可恢复ecc错误信息,则循环清零所述定时器重新开始计时,判断在10分钟内是否再次收到所述可恢复ecc错误信息的操作,直至所述bmc监控系统不再收到所述可恢复ecc错误信息;步骤s206:若未收到,则判定所述可恢复ecc错误已恢复,从而发送一条可恢复ecc错误的解除日志,关闭所述定时器停止计时。在本实施例中,将现有技术中每次接收到一条可恢复ecc错误信息均记录一条触发日志,变为某一时间段只记录一条,且当距离上次发生correctableecc错误一定时间后,产生一条解除correctableecc错误的日,从而节约了bmc的sel日志的空间,便于运维人员更好的进行维护工作,提高效率。请参考图3,图3为本发明实施例提供的一种bmc监控可恢复ecc错误的装置的结构框图;具体装置可以包括:计时模块100,用于在bmc监控系统首次接收到可恢复ecc错误信息时,开始计时;记录模块200,用于若在第一预设时长内,所述bmc监控系统再次接收到所述可恢复ecc错误信息,则记录一条可恢复ecc错误的触发日志;判断模块300,用于完成所述可恢复ecc错误的触发日志的记录后,重新开始计时,判断在第二预设时长内是否再次收到所述可恢复ecc错误信息;恢复模块400,用于若未收到,则判定所述可恢复ecc错误已恢复,从而发送一条可恢复ecc错误的解除日志,并停止计时。本实施例的bmc监控可恢复ecc错误的装置用于实现前述的bmc监控可恢复ecc错误的方法,因此bmc监控可恢复ecc错误的装置中的具体实施方式可见前文中的bmc监控可恢复ecc错误的方法的实施例部分,例如,计时模块100,记录模块200,判断模块300,恢复模块400,分别用于实现上述bmc监控可恢复ecc错误的方法中步骤s101,s102,s103和s104,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。本发明具体实施例还提供了一种bmc监控可恢复ecc错误的设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现上述一种bmc监控可恢复ecc错误的方法的步骤。本发明具体实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述一种bmc监控可恢复ecc错误的方法的步骤。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或
技术领域
:内所公知的任意其它形式的存储介质中。以上对本发明所提供的bmc监控可恢复ecc错误的方法、装置、设备以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本
技术领域
:的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1