一种服务器系统日志存储的方法与流程

文档序号:24160131发布日期:2021-03-05 15:38阅读:123来源:国知局
一种服务器系统日志存储的方法与流程

[0001]
本领域涉及计算机领域,并且更具体地涉及一种服务器系统日志存储的方法。


背景技术:

[0002]
随着信息化时代的高速发展,互联网,人工智能等技术覆盖了社会的各个领域,这对服务器的数据处理能力及网络数据的传输能力都有了更高的要求,并迫切需要服务器在有限的空间内同时支持多种应用配置,而这种服务器一般称为高密型服务器。
[0003]
高密型服务器中的器件紧密摆放,这会增加信号与信号之间的串扰,同时器件对于pcb板的结构应力有了更高的要求,这些不确定因素会增加系统的不稳定性,严重情况下会使服务器崩溃宕机,当出现宕机等严重情况下则需要抓取相关的系统日志进行分析定位,目前系统日志抓取的方法较为繁琐,会浪费大量的人力与物力。
[0004]
服务器中的系统日志是由bios(基本输入输出系统)中记录并打印的,它记录着服务器开机到结束整个运行过程,包括内存,cpu等初始化过程。
[0005]
目前,系统日志是由服务器主板上的com口通过uart信号传递给pc机,其中需要通过串口线将主板与pc机连接,并需要pc机上安装相应的串口工具用来记录保存服务器传递过来的系统日志。该方法需要额外的pc机资源,并且需要人为的用串口线将服务器与pc机连接,pc机上需要装相应的串口工具,若需要存储大量的系统日志,则需要花大量人力进行开关串口工具的操作,浪费大量的人力物力。


技术实现要素:

[0006]
有鉴于此,本发明实施例的目的在于提出一种服务器系统日志存储的方法,通过使用本发明的方法,能够根据需求改变系统日志的存储方式,在服务器内部实现系统日志自保存并且可以根据需要保存系统日志,避免资源的浪费,获取数据后保证数据可读性,简单易操作,可有效解决抓取系统日志耗时耗力的问题。
[0007]
基于上述目的,本发明的实施例的一个方面提供了一种服务器系统日志存储的方法,包括以下步骤:
[0008]
判断服务器的运行状态;
[0009]
响应于服务器处于测试模式,将连接到bios的存储芯片激活并将系统日志发送到存储芯片中进行存储;
[0010]
判断测试模式的类型;
[0011]
响应于测试模式的类型为预设定的类型,将存储芯片的存储模式切换成特定存储模式。
[0012]
根据本发明的一个实施例,响应于服务器处于测试模式,将连接到bios的存储芯片激活并将系统日志发送到存储芯片中进行存储包括:
[0013]
响应于服务器处于测试模式,将拨码开关拨动到第一位置以向控制器(复杂可编程逻辑器件)第一引脚发送高电平信号;
[0014]
响应于控制器第一引脚接收到高电平信号,控制器向存储芯片发送使能信号以使存储芯片激活;
[0015]
响应于存储芯片激活,bios将系统日志发送到存储芯片进行存储。
[0016]
根据本发明的一个实施例,响应于测试模式的类型为预设定的类型,将存储芯片的存储模式切换成对应的存储模式包括:
[0017]
响应于测试模式的类型为预设定的类型,将拨码开关拨动到第三位置以向控制器的第二引脚发送高电平信号;
[0018]
响应于控制器的第二引脚接收到高电平信号,控制器向存储芯片发送高电平信号;
[0019]
响应于存储芯片接收到高电平信号,存储芯片获取vr芯片(电压调节器)的芯电情况;
[0020]
响应于芯电存在,存储芯片存储系统日志;
[0021]
响应于芯电不存在,存储芯片停止存储系统日志并将已经存储的系统日志保存为一个文件。
[0022]
根据本发明的一个实施例,还包括:
[0023]
响应于服务器处于正常运行状态,将拨码开关拨动到第二位置以向控制器第一引脚发送低电平信号;
[0024]
响应于控制器第一引脚接收到低电平信号,控制器向存储芯片发送停用信号以使存储芯片停用。
[0025]
根据本发明的一个实施例,还包括:
[0026]
响应于测试模式的类型为一般类型测试,将拨码开关拨动到第四位置以向控制器的第二引脚发送低电平信号;
[0027]
响应于控制器的第二引脚接收到低电平信号,控制器向存储芯片发送低电平信号;
[0028]
存储芯片接收到低电平信号,存储芯片停止获取vr芯片的芯电情况并持续记录系统日志。
[0029]
根据本发明的一个实施例,服务器的运行状态包括正常运行状态和测试模式。
[0030]
根据本发明的一个实施例,测试模式包括一般类型测试和循环测试。
[0031]
根据本发明的一个实施例,预设定的类型包括直流电循环测试和交流电循环测试。
[0032]
根据本发明的一个实施例,还包括:
[0033]
存储芯片将存储的系统日志通过i2c发送到bmc(基板管理控制器)中存储并读取。
[0034]
根据本发明的一个实施例,存储芯片为flash存储芯片(编码型快闪记忆体)。
[0035]
本发明具有以下有益技术效果:本发明实施例提供的服务器系统日志存储的方法,通过判断服务器的运行状态;响应于服务器处于测试模式,将连接到bios的存储芯片激活并将系统日志发送到存储芯片中进行存储;判断测试模式的类型;响应于测试模式的类型为预设定的类型,将存储芯片的存储模式切换成对应的存储模式的技术方案,能够根据需求改变系统日志的存储方式,在服务器内部实现系统日志自保存并且可以根据需要保存系统日志,避免资源的浪费,获取数据后保证数据可读性,简单易操作,可有效解决抓取系
统日志耗时耗力的问题。
附图说明
[0036]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
[0037]
图1为根据本发明一个实施例的服务器系统日志存储的方法的示意性流程图;
[0038]
图2为根据本发明一个实施例的服务器系统日志存储的装置的示意图。
具体实施方式
[0039]
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
[0040]
基于上述目的,本发明的实施例的第一个方面,提出了一种服务器系统日志存储的方法的一个实施例。图1示出的是该方法的示意性流程图。
[0041]
如图1中所示,该方法可以包括以下步骤:
[0042]
s1判断服务器的运行状态,根据服务器的运行状态选择是否存储系统日志,服务器正常运行未发生宕机时,不需要采集系统日志,避免浪费额外的资源;
[0043]
s2响应于服务器处于测试模式,将连接到bios的存储芯片激活并将系统日志发送到存储芯片中进行存储,服务器进行debug测试时,需要采集系统日志进行测试分析,需要将存储芯片激活以进行系统日志的保存;
[0044]
s3判断测试模式的类型,服务器不同类型测试需要的系统日志模式不同,比如:服务器在进行长期dc(直流电)、ac(交流电)测试循环时,需要大量的系统日志内容进行收集,若将日志只保存在一个文件中,会导致文件大小过大,大大减小了系统日志的可读性,所以可以将存储芯片设定为特定的存储模式,该模式下,系统进行一次dc或ac测试就记录保存一次,使系统日志分批次保存为多个文件;
[0045]
s4响应于测试模式的类型为预设定的类型,将存储芯片的存储模式切换成对应的存储模式。
[0046]
通过本发明的技术方案,能够根据需求改变系统日志的存储方式,在服务器内部实现系统日志自保存并且可以根据需要保存系统日志,避免资源的浪费,获取数据后保证数据可读性,简单易操作,可有效解决抓取系统日志耗时耗力的问题。
[0047]
在本发明的一个优选实施例中,响应于服务器处于测试模式,将连接到bios的存储芯片激活并将系统日志发送到存储芯片中进行存储包括:
[0048]
响应于服务器处于测试模式,将拨码开关拨动到第一位置以向控制器第一引脚发送高电平信号;
[0049]
响应于控制器第一引脚接收到高电平信号,控制器向存储芯片发送使能信号以使存储芯片激活;
[0050]
响应于存储芯片激活,bios将系统日志发送到存储芯片进行存储。其中控制器可以是cpld,由于需要根据需要选择是否存储系统日志或者根据需要选择存储系统日志的模
式,可以在系统中设定拨码开关,根据服务器的运行状态将拨码开关拨动到指定位置以向存储芯片发送使能信号,这样就可以实现在需要记录系统日志时将存储芯片激活,在不需要记录系统日志时将存储芯片停用,避免了额外的资源浪费。
[0051]
在本发明的一个优选实施例中,响应于测试模式的类型为预设定的类型,将存储芯片的存储模式切换成对应的存储模式包括:
[0052]
响应于测试模式的类型为预设定的类型,将拨码开关拨动到第三位置以向控制器的第二引脚发送高电平信号;
[0053]
响应于控制器的第二引脚接收到高电平信号,控制器向存储芯片发送高电平信号;
[0054]
响应于存储芯片接收到高电平信号,存储芯片获取vr芯片的芯电情况;
[0055]
响应于芯电存在,存储芯片存储系统日志;
[0056]
响应于芯电不存在,存储芯片停止存储系统日志并将已经存储的系统日志保存为一个文件。其中控制器可以是cpld,与设定类型的测试模式为服务器在进行长期dc,ac测试循环,在服务器进行该测试的情况下,需要将每一测试的系统文件单独保存成一份日志,可以使存储芯片获取vr芯片的芯电情况,系统正在测试时,芯电是存在的,存储芯片正常存储系统日志,当测试完成需要重启服务器时,芯电是不存在的,存储芯片将已经存储的系统日志保存为一个文件,该文件就是本次测试的系统文件。当服务器重启完成继续测试时,芯电又存在了,存储芯片继续存储系统日志,这样就可以实现每一次测试就有一个单独的系统文件,可以便于每次测试的分析。
[0057]
在本发明的一个优选实施例中,还包括:
[0058]
响应于服务器处于正常运行状态,将拨码开关拨动到第二位置以向控制器第一引脚发送低电平信号;
[0059]
响应于控制器第一引脚接收到低电平信号,控制器向存储芯片发送停用信号以使存储芯片停用。服务器正常运行不需要记录系统日志,将拨码开关拨动到特定位置以向存储芯片发送停用信号。其中控制器可以是cpld。
[0060]
在本发明的一个优选实施例中,还包括:
[0061]
响应于测试模式的类型为一般类型测试,将拨码开关拨动到第四位置以向控制器的第二引脚发送低电平信号;
[0062]
响应于控制器的第二引脚接收到低电平信号,控制器向存储芯片发送低电平信号;
[0063]
存储芯片接收到低电平信号,存储芯片停止获取vr芯片的芯电情况并持续记录系统日志。其中控制器可以是cpld。在其他正常的测试下,可以将选择将所有的日志都保存在一个文件中,这时向存储芯片发送信号停止获取芯电的情况,存储芯片就可以持续的存储系统日志。
[0064]
在本发明的一个优选实施例中,服务器的运行状态包括正常运行状态和测试模式。
[0065]
在本发明的一个优选实施例中,测试模式包括一般类型测试和循环测试。
[0066]
在本发明的一个优选实施例中,预设定的类型包括直流电循环测试和交流电循环测试。
[0067]
在本发明的一个优选实施例中,还包括:
[0068]
存储芯片将存储的系统日志通过i2c发送到bmc中存储并读取。
[0069]
在本发明的一个优选实施例中,存储芯片为flash存储芯片。
[0070]
实施例
[0071]
图2示出了实现本发明方法的各个部件的连接方案的示意图,服务器上电后,通过拨码开关的1(on)和2(off)进行flash芯片的功能选通,当拨码开关拨至1时,表示1和2不互通,且外部有p3v3上拉,1.function_slect信号为高电平并进入cpld的一个gpio pin,cpld检测到该信号为高电平后,发送3.function_enable信号给到flash芯片进行激活,反之拨码开关拨至2,表示1和2互通,1.function_slect信号为低电平,cpld检测到低电平后不会发送enable信号给到flash芯片,flash芯片功能未激活,或者cpld检测到低电平后向flash芯片发送停用信号使flash芯片停用。
[0072]
当flash芯片被激活后,bios中打印的系统日志将保存至flash芯片中,通过拨码开关的3和4对系统日志保存方式选择,当拨码开关拨至3时,表示3和4不互通,且外部有p3v3上拉,2.mode_slect信号为高电平并进入cpld的另一个gpio pin(引脚),cpld检测到该信号为高电平后,发送高电平信号4.mode_1-2给到flash芯片的一个gpio pin,当flash芯片检测到该信号为高电平,激活并发送信号6.core_power_detect给到vr芯片,用于检测vr芯片中core电是否存在,若存在core电,信号6.core_power_detect为高电平,flash开始记录系统日志,若不存在core电,信号6.core_power_detect为低电平,服务器可能处在待机或者关机状态,flash停止记录并保存为一个文件,当第二次检测到core电时,flash再次记录系统日志,这样就是实现了flash在服务器每开关机一次就将系统日志保存为一个文件的功能,这种一般用于服务器在进行大量debug测试的情况,比如dc,rmt等测试;当拨码开关拨至4时,表示3和4互通,2.mode_slect信号为低电平并进入cpld的gpio pin,cpld检测到该信号为低电平后,发送低电平信号4.mode_1-2给到flash芯片的gpio pin,此时信号6.core_power_detect不被激活,flash芯片将系统日志保存在一个文件中,不进行分批次保存。若保存的系统日志文件大小即将超过flash芯片的存储大小时,cpld会发送5.reset信号给flash芯片,对flash芯片进行reset复位,清除之前芯片内部所有的系统日志,保证下一测试阶段系统日志的正常保存;flash芯片中保存的系统日志通过i2c传递给bmc,并在bmc内部将日志从bmc web界面上下载保存出来。
[0073]
通过本发明的技术方案,能够根据需求改变系统日志的存储方式,在服务器内部实现系统日志自保存并且可以根据需要保存系统日志,避免资源的浪费,获取数据后保证数据可读性,简单易操作,可有效解决抓取系统日志耗时耗力的问题。
[0074]
需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,上述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中存储介质可为磁碟、光盘、只读存储器(read-only memory,rom)或随机存取存储器(random access memory,ram)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
[0075]
此外,根据本发明实施例公开的方法还可以被实现为由cpu执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被cpu执行时,执行本发明
实施例公开的方法中限定的上述功能。
[0076]
上述实施例,特别是任何“优选”实施例是实现的可能示例,并且仅为了清楚地理解本发明的原理而提出。可以在不脱离本文所描述的技术的精神和原理的情况下对上述实施例进行许多变化和修改。所有修改旨在被包括在本公开的范围内并且由所附权利要求保护。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1