1.一种服务器运行阶段传送故障信息的方法,其特征在于,包括以下步骤:
定义硬件故障信息的数据格式,并在服务器运行阶段持续检测服务器的硬件状态;
响应于在服务器运行阶段检测到硬件故障,触发smi中断并按照所述数据格式收集发生故障的硬件的信息;
响应于发生故障的硬件的信息收集完成,将收集到的信息发送到bmc中并退出smi中断以使服务器恢复运行;
经由所述bmc将收集到的所述发生故障的硬件的信息进行解析以得到发生故障的硬件的详细信息。
2.根据权利要求1所述的方法,其特征在于,所述数据格式包括数据接收时间、smi中断累积计数、单次smi中断内收集数据产生的随机数、硬件类别、错误级别、故障位置和错误信息的原始数据。
3.根据权利要求2所述的方法,其特征在于,响应于在服务器运行阶段检测到硬件故障,触发smi中断并按照所述数据格式收集发生故障的硬件的信息包括:
响应于smi中断开始,经由bios检测硬件故障并将相应的故障信息写入故障信息表中;
将所述故障信息表中的所述smi中断累积计数加1并基于通过标准库函数生成一个字符的随机数写入所述故障信息表中。
4.根据权利要求3所述的方法,其特征在于,经由所述bmc将收集到的所述发生故障的硬件的信息进行解析以得到发生故障的硬件的详细信息包括:
将所述故障信息表中相同随机数对应的故障信息进行合并后存储到系统错误日志中;
将所述故障信息表中不相同随机数对应的故障信息分别存储到系统错误日志中;
对所述系统错误日志中记录的故障信息进行解析以得到发生故障的硬件的详细信息。
5.根据权利要求1所述的方法,其特征在于,响应于发生故障的硬件的信息收集完成,将收集到的信息发送到bmc中并退出smi中断以使服务器恢复运行包括:
经由ipmi命令将收集到的信息发送到bmc中。
6.一种服务器运行阶段传送故障信息的设备,其特征在于,所述设备包括:
定义模块,所述定义模块配置为定义硬件故障信息的数据格式,并在服务器运行阶段持续检测服务器的硬件状态;
收集模块,所述收集模块配置为响应于在服务器运行阶段检测到硬件故障,触发smi中断并按照所述数据格式收集发生故障的硬件的信息;
发送模块,所述发送模块配置为响应于发生故障的硬件的信息收集完成,将收集到的信息发送到bmc中并退出smi中断以使服务器恢复运行;
解析模块,所述解析模块配置为经由所述bmc将收集到的所述发生故障的硬件的信息进行解析以得到发生故障的硬件的详细信息。
7.根据权利要求6所述的设备,其特征在于,所述数据格式包括数据接收时间、smi中断累积计数、单次smi中断内收集数据产生的随机数、硬件类别、错误级别、故障位置和错误信息的原始数据。
8.根据权利要求7所述的设备,其特征在于,所述收集模块还配置为:
响应于smi中断开始,经由bios检测硬件故障并将相应的故障信息写入故障信息表中;
将所述故障信息表中的所述smi中断累积计数加1并基于通过标准库函数生成一个字符的随机数写入所述故障信息表中。
9.根据权利要求8所述的设备,其特征在于,所述解析模块还配置为:
将所述故障信息表中相同随机数对应的故障信息进行合并后存储到系统错误日志中;
将所述故障信息表中不相同随机数对应的故障信息分别存储到系统错误日志中;
对所述系统错误日志中记录的故障信息进行解析以得到发生故障的硬件的详细信息。
10.根据权利要求6所述的设备,其特征在于,所述发送模块还配置为:
经由ipmi命令将收集到的信息发送到bmc中。