故障日志记录方法、系统方法及设备与流程

文档序号:34299621发布日期:2023-05-31 14:34阅读:84来源:国知局
故障日志记录方法、系统方法及设备与流程

本技术涉及计算机设备,尤其涉及一种故障日志记录方法、系统方法及设备。


背景技术:

1、当前,计算机设备的管理控制器通常配置有日志文件,用于记录计算机设备发生故障(如系统宕机、崩溃或重启等)时的关键信息,这些关键信息可以用于分析计算机设备发生故障的根本原因。

2、相关技术中,在计算机设备发生故障后,中央处理器(central processing unit,cpu)会在执行故障处理流程(比如崩溃或宕机处理流程等)前,生成故障日志,用于记录计算机设备发生故障时的关键信息。之后,cpu将该故障日志发送给管理控制器,由管理控制器将故障日志写入日志文件。

3、然而,cpu与管理控制器之间通信方式遵循握手机制,具体来说,cpu向管理控制器传输故障日志的部分数据后,会向管理控制器发送询问信息,询问管理控制器是否收到该部分数据,之后,cpu会轮询查询管理控制器的回复,直至读取到管理控制器的回复,确认管理控制器已接收到该部分数据,才会继续传输故障日志的其他部分数据,这就导致故障日志的传输时间特别长,严重影响cpu继续执行故障处理流程。


技术实现思路

1、本技术实施例提供一种故障日志记录方法、系统方法及设备,能够提高故障日志的传输速度,缩短管理控制器接收故障日志的时间,有助于cpu快速进入故障处理流程。

2、为达到上述目的,本技术的实施例采用如下技术方案:

3、第一方面,提供了一种故障日志记录方法,用于计算机设备,计算机设备包括中央处理器cpu和管理控制器,管理控制器存储有日志文件;该方法由管理控制器执行;该方法包括:接收cpu发送的故障日志的第一分片数据;故障日志用于记录计算机设备的故障信息,第一分片数据包括故障日志的至少一个第一字节;将第一分片数据中的至少一个第一字节写入日志文件;向cpu发送目标中断信号;目标中断信号用于指示cpu继续发送故障日志;接收cpu发送故障日志的第二分片数据;第二分片数据是cpu根据目标中断信号所发送的,第二分片数据包括故障日志的至少一个第二字节。

4、该方案中,计算机设备发生故障后,cpu生成故障日志,以记录计算机设备的故障信息。管理控制器在接收到cpu发送的故障日志的第一分片数据后,将第一分片数据所包括的故障日志的至少一个第一字节写入日志文件,并主动向cpu发送目标中断信号,以指示cpu继续发送故障日志文件,从而实现快速接收到cpu根据目标中断信号所发送的故障日志的第二分片数据,该第二分片数据包括故障日志的至少一个第二字节。由于cpu发送完故障日志的第一分片数据后,可以根据接收到的目标中断信号继续发送故障日志的第二分片数据,相对于cpu轮询查询管理控制器的回复,节省了轮询的等待时间,因此,能够大幅缩短第一分片数据与第二分片数据之间的时间间隔,从而提高故障日志的传输速度,进而有效缩短管理控制器接收故障日志的时间,这样,有助于cpu快速进入后续的故障处理流程。

5、在一种可能的实现方式中,第一分片数据包括第一数据和第二数据,第一数据、第二数据包括至少一个字节;接收cpu发送的故障日志的第一分片数据,包括:接收cpu发送的第一数据;向cpu发送第一中断信号;第一中断信号用于指示cpu继续发送故障日志;接收cpu发送的第二数据;第二数据是cpu根据第一中断信号所发送的。

6、在该实现方式中,提供了接收第一分片数据的具体实现方式。由于第一分片数据包括第一数据和第二数据,第一数据和第二数据包括至少一个字节,管理控制器在接收第一数据后,向cpu发送第一中断信号,以指示cpu继续发送故障日志,从而实现快速接收到cpu根据第一中断信号所发送的第二数据。由于cpu发送完第一数据后,可以根据第一中断信号继续发送第二数据,相对于cpu轮询查询管理控制器的回复,节省了轮询的等待时间,能够缩短第一数据和第二数据之间的时间间隔,从而提高了第一分片数据的传输速度,进而有效缩短管理控制器接收第一分片数据的时间,这样,有助于进一步缩短管理控制器接收故障日志的时间。

7、另一种可能的实现方式中,在接收cpu发送的故障日志的第一分片数据之前,该方法还包括:向cpu发送目标信息,目标信息用于指示cpu根据管理控制器所发送的中断信号传输故障日志。

8、在该实现方式中,管理控制器在接收cpu发送的故障日志的第一分片数据之前,通过向cpu发送目标信息,实现设置cpu根据管理控制器所发送的中断信号传输故障日志。基于该设置,cpu在发送完故障日志的部分分片数据后,可以根据管理控制器所发送的中断信号继续发送故障日志的其他部分数据。

9、另一种可能的实现方式中,第一分片数据、第二分片数据的帧长度为预设数值;其中,管理控制器与cpu基于目标接口传输故障日志,预设数值为目标接口所传输数据的帧长度的最大值。

10、在该实现方式中,通过设置第一分片数据、第一分片数据的帧长度为预设数值,且预设数值为目标接口所传输数据的帧长度的最大值,这样,有助于减少故障日志的分片数据的数量,进而提高故障日志的传输速度,有助于进一步缩短故障日志的传输时间。

11、另一种可能的实现方式中,第一分片数据还包括管理控制器的标识;将第一分片数据中的至少一个第一字节写入日志文件,包括:若管理控制器的标识与管理控制器的实际标识相同,将第一分片数据中的至少一个第一字节写入日志文件;其中,管理控制器的标识与管理控制器的实际标识相同指示了第一分片数据的数据格式满足要求。

12、在该实现方式中,第一分片数据还包括管理控制器的标识,管理控制器在接收到第一分片数据后,先判断第一分片数据所包括的管理控制器的标识与管理控制器的实际标识是否相同,若相同,则说明第一分片数据的数据格式满足要求,管理控制器将第一分片数据写入日志文件。通过设置第一分片数据还包括管理控制器的标识,并在管理控制器基于该管理控制器的标识,验证第一分片数据的数据格式满足要求时,才将至少一个第一字节写入日志文件,这样,有助于管理控制器能够准确识别故障日志的内容。

13、另一种可能的实现方式中,第一分片数据还包括第一检验和,第一校验和是cpu基于第一分片数据的内容确定的;将第一分片数据中的至少一个第一字节写入日志文件,包括:基于第一分片数据的内容,确定第一分片数据的第二校验和;若第二校验和与第一校验和相同,将第一分片数据中的至少一个第一字节写入日志文件;其中,第二校验和与第一校验和相同用于指示第一分片数据的内容未被改变。

14、在该实现方式中,第一分片数据还包括第一校验和,该第一校验和是cpu根据第一分片数据的内容生成的。管理控制器在接收到第一分片数据后,先根据第一分片数据的内容生成第二校验和,并判断第二校验和与第一校验和是否相同,若相同,则说明第一分片数据的内容未被改变,管理控制器将第一分片数据写入日志文件。通过设置第一分片数据还包括第一校验和,并在管理控制器根据第一校验和,验证第一分片数据的内容未被改变时,才将至少一个第一字节写入日志文件,这样,有助于避免存储内容错误的至少一个第一字节,以致后续无法根据故障日志准确分析计算机设备发生故障的原因。

15、另一种可能的实现方式中,第一分片数据还包括至少一个第一字节的数据偏移量,数据偏移量用于指示至少一个第一字节在故障日志中的记录位置。

16、在该实现方式中,通过设置第一分片数据还包括至少一个第一字节的数据偏移量,这样,若第一分片数据与其他分片数据的接收顺序,与第一分片数据与其他分片数据的发送顺序不同,例如,cpu先发送第一分片数据,后发送其他分片数据,而管理控制器先接收到其他分片数据,后接收到第一分片数据,则管理控制器可以根据至少一个第一字节的数据偏移量,将至少一个第一字节写入日志文件,这样,有助于保证管理控制器所存储的故障日志中的多个字节顺序,与cpu生成的故障日志中的多个字节的顺序相同,进而有助于保证管理控制器所存储的故障日志的准确性。

17、另一种可能的实现方式中,第一分片数据还包括操作信息;操作信息用于指示第一分片数据所属的操作类型,操作类型包括写准备、写数据或写结束中任一种。

18、在该实现方式中,通过设置第一分片数据还包括操作信息,且操作信息指示了第一分片数据所属的操作类型为写准备、写数据或写结束,这样,有助于管理控制器根据操作信息准确判断故障日志的传输阶段。

19、第二方面,提供了一种故障日志记录方法,用于计算机设备,计算机设备包括中央处理器cpu和管理控制器,管理控制器存储有日志文件;该方法由cpu执行;该方法包括:生成故障日志;故障日志用于记录计算机设备的故障信息;向管理控制器发送故障日志的第一分片数据;第一分片数据包括故障日志的至少一个第一字节;接收管理控制器发送的目标中断信号,目标中断信号指示了继续发送故障日志;响应目标中断信号,向管理控制器发送故障日志的第二分片数据,第二分片数据包括故障日志的至少一个第二字节。

20、在该方案中,计算机设备发生故障后,cpu生成故障日志,以记录计算机设备的故障信息。之后,cpu将故障日志的第一分片数据发送给管理控制器,在接收到管理控制器发送目标中断信号后,由于该目标中断信号指示了继续发送故障日志,因此,cpu根据目标中断信号继续向管理控制器发送故障日志的第二分片数据。由于cpu发送完故障日志的第一分片数据后,可以根据接收到的目标中断信号继续发送故障日志的第二分片数据,相对于cpu轮询查询管理控制器的回复,节省了轮询的等待时间,因此,能够大幅缩短第一分片数据与第二分片数据之间的时间间隔,从而提高故障日志的传输速度,进而有效缩短cpu发送故障日志的时间,这样,有助于cpu快速进入后续的故障处理流程。

21、在一种可能的实现方式中,第一分片数据包括第一数据和第二数据,第一数据、第二数据包括至少一个字节;向管理控制器发送故障日志的第一分片数据,包括:向管理控制器发送第一数据;接收管理控制器发送的第一中断信号;第一中断信号指示了继续发送故障日志;根据第一中断信号,向管理控制器发送第二数据。

22、在该实现方式中,提供了发生第一分片数据的具体实现方式。由于第一分片数据包括第一数据和第二数据,第一数据和第二数据包括至少一个字节,cpu向管理控制器发送第一数据后,在接收管理控制器发送的第一中断信号时,由于该第一中断信号指示了继续发送故障日志,因此,cpu根据第一中断信号继续向管理控制器发送第二数据。由于cpu发送完第一数据后,可以根据第一中断信号继续发送第二数据,相对于cpu轮询查询管理控制器的回复,节省了轮询的等待时间,因此,能够缩短第一数据和第二数据之间的时间间隔,从而提高第一分片数据的传输速度,进而有效缩短cpu发送第一分片数据的时间,这样,有助于进一步缩短cpu发送故障日志所使用的时间。

23、另一种可能的实现方式中,在生成故障日志之前,该方法还包括:接收管理控制器发送的目标信息;目标信息用于指示cpu根据管理控制器所发送的中断信号传输故障日志。

24、在该实现方式中,管理控制器在接收cpu发送的故障日志的第一分片数据之前,通过向cpu发送目标信息,实现设置cpu根据管理控制器所发送的中断信号传输故障日志。基于该设置,cpu在发送完故障日志的部分分片数据后,可以根据管理控制器所发送的中断信号继续发送故障日志的其他部分数据。

25、另一种可能的实现方式中,cpu与管理控制器通过目标总线传输故障日志;该方法还包括:将控制目标总线的中断寄存器的值配置为目标值;目标值用于指示中断信号为有效状态。

26、在该实现方式中,cpu与管理控制器通过目标总线传输故障日志,cpu将控制目标总线的中断寄存器的值配置为目标值,以使得使用目标总线传输的中断信号为有效状态,从而保证cpu能够成功响应管理控制器所发送的中断信号。

27、另一种可能的实现方式中,第一分片数据、第二分片数据的帧长度为预设数值;其中,预设数值大于或等于预设阈值。

28、在该实现方式中,通过设置第一分片数据、第一分片数据的帧长度为预设数值,且预设数值大于或等于预设阈值,这样,通过设置合适的预设阈值,可以保证第一分片数据和第二分片数据的帧长度较大,从而实现减少故障日志的分片数据的数量,进而提高故障日志的传输速度,有助于进一步缩短故障日志的传输时间。

29、另一种可能的实现方式中,第一分片数据包括管理控制器的标识;其中,该管理控制器的标识用于指示第一分片数据的数据格式是否满足要求。

30、在该实现方式中,通过设置第一分片数据还包括管理控制器的标识,用于指示第一分片数据的数据格式是否满足要求,这样,管理控制器在接收到第一分片数据后,就可以基于该管理控制器的标识,判断第一分片数据的数据格式是否满足要求,有助于避免管理控制器存储数据格式不满足要求的分片数据,导致管理控制器无法准确识别故障日志内容。

31、另一种可能的实现方式中,第一分片数据包括第一校验和,第一校验和是cpu基于第一分片数据的内容确定的;其中,第一校验和用于指示第一分片数据的内容是否被改变。

32、在该实现方式中,通过设置第一分片数据还包括第一校验和,该第一校验和是cpu基于第一分片数据的内容确定的,且该第一校验和能够指示第一分片数据的内容是否被改变,这样,管理控制器在接收到第一分片数据后,就可以根据第一校验和,判断第一分片数据的内容是否被改变,有助于避免管理控制器存储内容被改变的第一分片数据,导致后续无法根据故障日志准确分析计算机设备发生故障的原因。

33、另一种可能的实现方式中,第一分片数据还包括至少一个第一字节的数据偏移量,数据偏移量用于指示至少一个第一字节在故障日志中的记录位置。

34、在该实现方式中,通过设置第一分片数据还包括至少一个第一字节的数据偏移量,这样,若第一分片数据与其他分片数据的接收顺序,与第一分片数据与其他分片数据的发送顺序不同,例如,cpu先发送第一分片数据,后发送其他分片数据,而管理控制器先接收到其他分片数据,后接收到第一分片数据,则管理控制器可以根据至少一个第一字节的数据偏移量,将至少一个第一字节写入日志文件,这样,有助于保证管理控制器所存储的故障日志中的多个字节顺序,与cpu生成的故障日志中的多个字节的顺序相同,进而有助于保证管理控制器所存储的故障日志的准确性。

35、另一种可能的实现方式中,第一分片数据还包括操作信息;操作信息用于指示第一分片数据所属的操作类型,操作类型包括写准备、写数据或写结束中任一种。

36、在该实现方式中,第一分片数据包括操作信息,该操作信息指示了第一分片数据所属的操作类型为写准备、写数据或写结束,这样,有助于管理控制器根据操作信息准确判断故障日志的传输阶段。

37、第三方面,提供了一种系统方法,用于计算机设备,计算机设备包括中央处理器cpu和管理控制器,管理控制器存储有日志文件;该系统方法包括:cpu生成故障日志;故障日志用于记录计算机设备的故障信息;cpu向管理控制器发送故障日志的第一分片数据;第一分片数据包括故障日志的至少一个第一字节;管理控制器接收cpu发送的故障日志的第一分片数据,并将第一分片数据中的至少一个第一字节写入日志文件;管理控制器向cpu发送目标中断信号;目标中断信号用于指示继续发送故障日志;cpu接收管理控制器发送的目标中断信号,并根据目标中断信号,向管理控制器发送故障日志的第二分片数据;第二分片数据包括故障日志的至少一个第二字节;管理控制器接收cpu发送的故障日志的第二分片数据。

38、需要说明的,在第三方面,管理控制器还可以执行上述第一方面中的任意一种可能的实现方式,cpu还可以上述第二方面中任意一种可能的实现方式,此处不再赘述。

39、第四方面,提供了一种故障日志记录装置,该装置包括:用于执行第一方面提供的任意一种方法的功能单元,各个功能单元所执行的动作通过硬件实现或通过硬件执行相应的软件实现。例如,故障日志记录装置可以包括:接收单元、写入单元和发送单元;接收单元,用于控制管理控制器接收cpu发送的故障日志的第一分片数据;故障日志用于记录计算机设备的故障信息,第一分片数据包括故障日志的至少一个第一字节;写入单元,用于控制管理控制器将第一分片数据中的至少一个第一字节写入日志文件;发送单元,用于控制管理控制器向cpu发送目标中断信号;目标中断信号用于指示cpu继续发送故障日志;接收单元,还用于控制管理控制器接收cpu发送的故障日志第二分片数据;其中,第二分片数据是cpu根据目标中断信号所发送的,第二分片数据包括故障日志的至少一个第二字节。

40、第五方面,提供了一种故障日志记录装置,该装置包括:用于执行第二方面提供的任意一种方法的功能单元,各个功能单元所执行的动作通过硬件实现或通过硬件执行相应的软件实现。例如,故障日志记录装置可以包括:处理单元、发送单元和接收单元;处理单元,用于控制cpu生成故障日志;故障日志用于记录计算机设备的故障信息;发送单元,用于控制cpu向管理控制器发送故障日志的第一分片数据;第一分片数据包括故障日志的至少一个第一字节;接收单元,用于控制cpu接收管理控制器发送的目标中断信号,目标中断信号指示了继续发送故障日志;发送单元,还用于控制cpu根据目标中断信号,向管理控制器发送故障日志的第二分片数据,第二分片数据包括故障日志的至少一个第二字节。

41、第六方面,提供了一种计算机设备,该计算机设备包括中央处理器cpu和管理控制器,管理控制器存储有日志文件;管理控制器,用于接收cpu发送的故障日志的第一分片数据;故障日志用于记录计算机设备的故障信息,第一分片数据包括故障日志的至少一个第一字节;管理控制器,还用于将第一分片数据中的至少一个第一字节写入日志文件;管理控制器,还用于向cpu发送目标中断信号;目标中断信号用于指示继续cpu发送故障日志;管理控制器,还用于接收cpu发送的故障日志第二分片数据;其中,第二分片数据是cpu根据目标中断信号所发送的,第二分片数据包括故障日志的至少一个第二字节。

42、需要说明的,在第六方面,管理控制器还可以执行上述第一方面中的任意一种可能的实现方式,此处不再赘述。

43、第七方面,提供了一种计算机设备,该计算机设备包括中央处理器cpu和管理控制器,管理控制器存储有日志文件;cpu,用于生成故障日志;故障日志用于记录计算机设备的故障信息;cpu,还用于向管理控制器发送故障日志的第一分片数据;第一分片数据包括故障日志的至少一个第一字节;cpu,还用于接收管理控制器发送的目标中断信号,目标中断信号指示了继续发送故障日志;cpu,还用于根据目标中断信号,向管理控制器发送故障日志的第二分片数据,第二分片数据包括故障日志的至少一个第二字节。

44、需要说明的,在第七方面,cpu还可以执行上述第二方面中的任意一种可能的实现方式,此处不再赘述。

45、第八方面,提供了一种计算机设备,该计算机设备包括中央处理器cpu和管理控制器,管理控制器存储有日志文件,中央处理器cpu和管理控制器连接;cpu生成故障日志;故障日志用于记录计算机设备的故障信息;cpu向管理控制器发送故障日志的第一分片数据;第一分片数据包括故障日志的至少一个第一字节;管理控制器接收cpu发送的故障日志的第一分片数据,并将第一分片数据中的至少一个第一字节写入日志文件;管理控制器向cpu发送目标中断信号;目标中断信号用于指示cpu继续发送故障日志;cpu接收管理控制器发送的目标中断信号,并根据目标中断信号,向管理控制器发送故障日志的第二分片数据;第二分片数据包括故障日志的至少一个第二字节;管理控制器接收cpu发送的故障日志的第二分片数据。

46、需要说明的,在第八方面,管理控制器还可以执行上述第一方面中的任意一种可能的实现方式,cpu还可以上述第二方面中任意一种可能的实现方式,此处不再赘述。

47、一种可能的实现方式中,中央处理器cpu和管理控制器通过增强型串行外围接口espi总线连接。

48、第九方面,提供了一种计算机设备,包括:包括:处理器和存储器,处理器与存储器连接。存储器用于存储计算机执行指令,处理器执行存储器存储的计算机执行指令,从而实现上述第一方面提供的任意一种方法,或者,实现上述第二方面提供的任意一种方法。

49、第十方面,提供了一种芯片,芯片包括:处理器和接口电路;接口电路,用于接收代码指令并传输至处理器;处理器,用于运行代码指令以执行上述第一方面提供的任意一种方法,或者,执行上述第二方面提供的任意一种方法。

50、第十一方面,提供了一种计算机可读存储介质,存储有计算机执行指令,当计算机执行指令在计算机上运行时,使得计算机执行上述第一方面提供的任意一种方法,或者,执行上述第二方面提供的任意一种方法。

51、第十二方面,提供了一种计算机程序产品,包括计算机执行指令,当计算机执行指令在计算机上运行时,使得计算机执行上述第一方面提供的任意一种方法,或者,执行上述第二方面提供的任意一种方法。

52、其中,第三方面至第十二方面中任一种实现方式所带来的技术效果可参见第一方面中不同实现方式所带来的技术效果,此处不再赘述。

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