CN115905119A - 一种bmc日志压缩提取方法及*** - Google Patents
一种bmc日志压缩提取方法及*** Download PDFInfo
- Publication number
- CN115905119A CN115905119A CN202211182360.9A CN202211182360A CN115905119A CN 115905119 A CN115905119 A CN 115905119A CN 202211182360 A CN202211182360 A CN 202211182360A CN 115905119 A CN115905119 A CN 115905119A
- Authority
- CN
- China
- Prior art keywords
- log
- bmc
- event
- description
- original
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种BMC日志压缩提取方法及***,方法包括:生成BMC原始日志;获取BMC原始日志数据,对BMC原始日志进行压缩转换;获取日志记录描述;对BMC日志进行提取;将事件描述项后回填给WEB端进行显示,实现WEB显示,所述生成BMC原始日志包括***事件日志、故障诊断日志以及审计日志;其中,***事件日志原始日志内容包括时间、传感器类型、事件描述;本发明通过将事件描述转换成索引号,将长字符串通过短的字符编码来替换,记录索引号到文件中,解决由于日志事件描述字符多且描述重复导致占用存储空间大的问题,同时本申请中日志记录为二进制文件,无法直接解析,信息安全得到保障。
Description
技术领域
本发明涉及服务器技术领域,具体涉及一种BMC日志压缩提取方法及***。
背景技术
BMC日志包含了***事件日志、故障诊断日志以及审计日志。***事件日志记录的是服务器所有传感器的事件信息,故障诊断日志记录的是设备的事件信息,审计日志记录的是用户操作的事件信息。这三种类型的日志目前都被保存在BMC的flash当中,由于flash大小是固定的,所以大量日志的存储是一个问题。
同时,中国专利CN113672580A公开了一种BMC日志收集方法、装置、设备及可读存储介质。本申请公开的方法应用于BMC管理***,包括:若接收到浏览器端发送的请求,则基于请求的URL判断请求是否为BMC日志收集请求;若是,则解析请求得到待收集的、用户基于浏览器端确定的日志类型;按照日志类型的收集方式收集相应的日志信息;压缩日志信息,并将压缩后的日志信息返回至浏览器端,最终能够自动收集到用户想要收集的日志内容;现有方法日志记录完成后进行压缩,但是该方法本质上比较依赖压缩算法,有一定的局限性,而且存储的日志文件为文本文件,安全性较低。
因此,针对问题,需要提出一种更优的BMC日志压缩提取方法及***,以解决BMC日志占用存储空间过多的问题。
发明内容
有鉴于此,本发明的目的在于提出一种改进的BMC日志压缩提取方法及***,以解决BMC日志占用存储空间过多的问题。
现有方法本质上比较依赖压缩算法,有一定的局限性,而且存储的日志文件为文本文件,安全性较低。因此,针对问题,需要提出一种更优的BMC日志压缩提取方法及***,以解决BMC日志占用存储空间过多的问题,所述BMC日志压缩提取方法包括以下步骤:生成BMC原始日志;获取BMC原始日志数据,对BMC原始日志进行压缩转换;获取日志记录描述;对BMC日志进行提取;将事件描述项后回填给WEB端进行显示,实现WEB显示。本发明通过将事件描述转换成索引号,将长字符串通过短的字符编码来替换,记录索引号到文件中,解决由于日志事件描述字符多且描述重复导致占用存储空间大的问题,同时本申请中日志记录为二进制文件,无法直接解析,信息安全得到保障。
基于上述目的,一方面,本发明提供了一种BMC日志压缩提取方法,其中该方法包括以下步骤:
生成BMC原始日志;
获取BMC原始日志数据,对BMC原始日志进行压缩转换;
获取日志记录描述;
对BMC日志进行提取;
将事件描述项后回填给WEB端进行显示,实现WEB显示。
在根据本发明的BMC日志压缩提取方法的一些实施例中,所述生成BMC原始日志包括***事件日志、故障诊断日志以及审计日志;
其中,***事件日志原始日志内容包括时间、传感器类型、事件描述;
故障诊断日志原始日志包含时间、设备类型、事件描述;
审计日志原始日志包括时间、接口类型、事件描述。
在根据本发明的BMC日志压缩提取方法的一些实施例中,***事件日志、故障诊断日志以及审计原始日志皆包含时间、类型、事件描述,能统一转换为压缩日志。
在根据本发明的BMC日志压缩提取方法的一些实施例中,所述生成BMC原始日志的方法,具体包括:
传感器事件触发时生成***事件原始日志;
检测到故障发生时生成故障诊断原始日志;
用户登陆发送IPMI指令时生成审计日志原始日志。
在根据本发明的BMC日志压缩提取方法的一些实施例中,所述获取日志记录描述的方法,具体包括:
BMC启动,日志压缩提取模块将存放在flash当中的JSON文件进行加载并解析;
日志压缩提取进程启动;
判断flash中是否存在已经生成的JSON文件,如果不存在JSON文件,新建一个空的JSON文件,并初始化对应的结构体数组为空;
如果存在JSON文件,按照格式读取JSON文件,并将获取后的数据保存到结构体数组中。
在根据本发明的BMC日志压缩提取方法的一些实施例中,所述获取BMC原始日志数据,对BMC原始日志进行压缩转换的方法,具体包括:
接收到一条新的日志记录;
根据原始日志中description在初始化后的结构体数组当中顺序查找相同的description;
如果未找到,计算出结构体数组中最大的index,并加1,作为新的日志事件描述记录项的index,将新的index返回,并同步到JSON文件当中,保证结构体数组和JSON文件相同。
在根据本发明的BMC日志压缩提取方法的一些实施例中,所述对BMC原始日志进行压缩转换的方法,具体还包括:
如果找到相同的description,则直接返回index;
最后将返回的index替换掉原始日志记录当中的description,添加时间戳、类型值以二进制形式将日志记录保存到对应的日志文件中。
在根据本发明的BMC日志压缩提取方法的一些实施例中,所述对BMC日志进行提取的方法,具体包括:
WEB端获取查看请求;
获取日志文件;
循环读取日志中每行数据,读取到这一条日志中index数值;
使用该index数值遍历查找结构体数组,若无法找到,执行错误处理;
找到对应description,使用该description,将时间戳转换为当前时间添加事件类型;
若没有找到,则该条日志显示空。
本发明的另一方面,还提供了一种BMC日志压缩提取***,其中包括:
BMC日志压缩模块,将原始日志与日志事件描述表中的事件描述项进行匹配,找到日志事件描述表中的事件描述项对应的索引号,使用索引号替换掉事件描述项保存到日志文件中;
BMC日志提取模块,用于提取BMC日志,提取时根据日志文件当中的索引号,查找日志事件描述表对应的事件描述项,找到后将事件描述项后回填给WEB端进行显示。
在根据本发明的BMC日志压缩提取***的一些实施例中,所述BMC日志压缩模块,具体包括:
***事件日志生成单元,用于在传感器事件触发时生成***事件原始日志;
故障诊断日志生成单元,用于在检测到故障发生时生成故障诊断原始日志;
审计日志生成单元,用于在用户登陆发送IPMI指令时生成审计日志原始日志。
本发明至少具有以下有益技术效果:本发明通过将事件描述转换成索引号,将长字符串通过短的字符编码来替换,记录索引号到文件中,解决由于日志事件描述字符多且描述重复导致占用存储空间大的问题,同时本申请中日志记录为二进制文件,无法直接解析,信息安全得到保障。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
在图中:
图1示出了所述BMC日志压缩提取方法的实现流程示意图;
图2示出了所述生成BMC原始日志方法的实现流程示意图;
图3示出了所述获取日志记录描述方法的实现流程示意图;
图4示出了所述获取BMC原始日志数据,对BMC原始日志进行压缩转换方法的实现流程示意图;
图5示出了对BMC日志进行提取方法的实现流程示意图;
图6示出了所述BMC日志压缩提取***的结构示意图;
图7示出了所述BMC日志压缩模块的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称的非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备固有的其他步骤或单元。
现有方法本质上比较依赖压缩算法,有一定的局限性,而且存储的日志文件为文本文件,安全性较低。因此,针对问题,需要提出一种更优的BMC日志压缩提取方法及***,以解决BMC日志占用存储空间过多的问题,所述BMC日志压缩提取方法包括以下步骤:生成BMC原始日志;获取BMC原始日志数据,对BMC原始日志进行压缩转换;获取日志记录描述;对BMC日志进行提取;将事件描述项后回填给WEB端进行显示,实现WEB显示。本发明通过将事件描述转换成索引号,将长字符串通过短的字符编码来替换,记录索引号到文件中,解决由于日志事件描述字符多且描述重复导致占用存储空间大的问题,同时本申请中日志记录为二进制文件,无法直接解析,信息安全得到保障。
本发明实施例提供了一种BMC日志压缩提取方法,如图1所示,示出了所述BMC日志压缩提取方法的实现流程示意图,所述BMC日志压缩提取方法,具体包括:
步骤S10,生成BMC原始日志;
步骤S20,获取BMC原始日志数据,对BMC原始日志进行压缩转换;
步骤S30,获取日志记录描述;
步骤S40,对BMC日志进行提取;
步骤S50,将事件描述项后回填给WEB端进行显示,实现WEB显示。
在本实施例中,本发明通过将事件描述转换成索引号,将长字符串通过短的字符编码来替换,记录索引号到文件中,解决由于日志事件描述字符多且描述重复导致占用存储空间大的问题,同时本申请中日志记录为二进制文件,无法直接解析,信息安全得到保障。
需要说明的是,日志生成一般会根据BMC模块的不同,生成的方式也不同,但是相同点在于,每一条记录日志,都会有事件描述这一项,而大部分记录日志的事件描述一模一样。通过将事件描述转换成索引号,将长字符串通过短的字符编码来替换,记录索引号到文件中,显著降低存储占用空间。
具体过程是BMC各个模块生成原始日志后,使用日志压缩提取模块根据压缩算法对生成的日志进行压缩转换,然后将压缩后的日志存放到对应的日志文件中。WEB端显示日志,由日志压缩提取模块根据对应的提取算法,从日志文件中解析出原始日志信息,显示到WEB端,供用户浏览。
这种方法的优点在于日志存储到日志文件之前,会进行一次压缩,大大减少了每条日志的字节数,从而日志文件的存储量也相应减小。这种方法的优点还在于,存储到日志文件中的是二进制编码,不是文本信息,日志文件安全性得到极大提升。
在本申请中,所述生成BMC原始日志包括***事件日志、故障诊断日志以及审计日志;其中,***事件日志原始日志内容包括时间、传感器类型、事件描述;故障诊断日志原始日志包含时间、设备类型、事件描述;审计日志原始日志包括时间、接口类型、事件描述。
需要是说明的是,***事件日志、故障诊断日志以及审计原始日志皆包含时间、类型、事件描述,能统一转换为压缩日志。
本发明实施例提供了一种生成BMC原始日志的方法,如图2所示,示出了所述生成BMC原始日志方法的实现流程示意图,所述生成BMC原始日志的方法,具体包括:
步骤S101,传感器事件触发时生成***事件原始日志;
步骤S102,检测到故障发生时生成故障诊断原始日志;
步骤S103,用户登陆发送IPMI指令时生成审计日志原始日志。
在本实施例中,原始日志中事件描述有如下信息:
Power supply inspur lost or out-of-range asserted、BMC_Boot_up systeminitiated等。
这些信息都是格式化的、重复的,可以通过日志事件描述表将事件描述项转化为索引号,降低存储需求。
在本实施例中,日志事件描述表如下表1所示。
表1日志事件描述表
其中日志描述表掉电非易失,使用JSON文件存放在BMC的flash当中,JSON文件格式如下:
{“index”:”0”,
“type”:”0”,
“description”:”Power Supply input lost or out-of-range-asserted”
}
index索引是递增生成的;
type类型是日志的类型表示,其中0为***事件日志、1为诊断日志、2为审计日志;
description为记录日志的描述。
本发明实施例提供了获取日志记录描述的方法,如图3所示,示出了所述获取日志记录描述方法的实现流程示意图,所述获取日志记录描述的方法,具体包括:
步骤S201,BMC启动,日志压缩提取模块将存放在flash当中的JSON文件进行加载并解析;
步骤S202,日志压缩提取进程启动;
步骤S203,判断flash中是否存在已经生成的JSON文件,如果不存在JSON文件,新建一个空的JSON文件,并初始化对应的结构体数组为空;
步骤S204,如果存在JSON文件,按照格式读取JSON文件,并将获取后的数据保存到结构体数组中。
在本实施例中,结构体数组定义如下:
Struct event_descrip{
int index;
unsigned char type;
char*description;
}。
其中,index为索引号;type类型是日志的类型表示,其中0为***事件日志、1为诊断日志、2为审计日志;description为记录日志的描述。
本发明实施例提供了获取BMC原始日志数据,对BMC原始日志进行压缩转换的方法,如图4所示,示出了所述获取BMC原始日志数据,对BMC原始日志进行压缩转换方法的实现流程示意图,所述获取BMC原始日志数据,对BMC原始日志进行压缩转换的方法,具体包括:
步骤S301,接收到一条新的日志记录;
步骤S302,根据原始日志中description在初始化后的结构体数组当中顺序查找相同的description;
步骤S303,如果未找到,计算出结构体数组中最大的index,并加1,作为新的日志事件描述记录项的index,将新的index返回,并同步到JSON文件当中,保证结构体数组和JSON文件相同。
步骤S304,如果找到相同的description,则直接返回index;
步骤S305,最后将返回的index替换掉原始日志记录当中的description,添加时间戳、类型值以二进制形式将日志记录保存到对应的日志文件中。
在本实施例中,日志压缩提取模块接收到一条新的日志记录后,首先会根据原始日志中description在初始化后的结构体数组当中顺序查找相同的description,如果未找到,计算出结构体数组中最大的index,并加1,作为新的日志事件描述记录项的index,将新的index返回,并同步到JSON文件当中,保证结构体数组和JSON文件相同。
如果找到相同的description,则直接返回index。
最后将返回的index替换掉原始日志记录当中的description,添加时间戳、类型值以二进制形式将日志记录保存到对应的日志文件中。
同时,日志文件每行记录项结构体如下定义
Struct log_str{
unsigned int time_stamp;
unsigned short type;
int index;
};
其中,time_stamp为时间戳,从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数;
type:是事件类型码,包括传感器类型,接口类型,设备类型;
index:是事件描述项在日志事件描述表中的索引号。
本发明实施例提供了对BMC日志进行提取的方法,如图5所示,示出了对BMC日志进行提取方法的实现流程示意图,所述对BMC日志进行提取的方法,具体包括:
步骤S401,WEB端获取查看请求;
步骤S402,获取日志文件;
步骤S403,循环读取日志中每行数据,读取到这一条日志中index数值;
步骤S404,使用该index数值遍历查找结构体数组,若无法找到,执行错误处理;
步骤S405,找到对应description,使用该description,将时间戳转换为当前时间添加事件类型;
步骤S405,若没有找到,则该条日志显示空。
本发明实施例提供了一种BMC日志压缩提取***,如图6所示,示出了所述BMC日志压缩提取***的结构示意图,所述BMC日志压缩提取***,具体包括:
BMC日志压缩模块100,将原始日志与日志事件描述表中的事件描述项进行匹配,找到日志事件描述表中的事件描述项对应的索引号,使用索引号替换掉事件描述项保存到日志文件中;
BMC日志提取模块200,用于提取BMC日志,提取时根据日志文件当中的索引号,查找日志事件描述表对应的事件描述项,找到后将事件描述项后回填给WEB端进行显示。
在本实施例中,本发明通过将事件描述转换成索引号,将长字符串通过短的字符编码来替换,记录索引号到文件中,解决由于日志事件描述字符多且描述重复导致占用存储空间大的问题,同时本申请中日志记录为二进制文件,无法直接解析,信息安全得到保障。
需要说明的是,日志生成一般会根据BMC模块的不同,生成的方式也不同,但是相同点在于,每一条记录日志,都会有事件描述这一项,而大部分记录日志的事件描述一模一样。通过将事件描述转换成索引号,将长字符串通过短的字符编码来替换,记录索引号到文件中,显著降低存储占用空间。
具体过程是BMC各个模块生成原始日志后,使用日志压缩提取模块根据压缩算法对生成的日志进行压缩转换,然后将压缩后的日志存放到对应的日志文件中。WEB端显示日志,由日志压缩提取模块根据对应的提取算法,从日志文件中解析出原始日志信息,显示到WEB端,供用户浏览。
这种方法的优点在于日志存储到日志文件之前,会进行一次压缩,大大减少了每条日志的字节数,从而日志文件的存储量也相应减小。这种方法的优点还在于,存储到日志文件中的是二进制编码,不是文本信息,日志文件安全性得到极大提升。
本发明实施例提供了BMC日志压缩模块100,如图7所示,示出了所述BMC日志压缩模块100的结构示意图,所述BMC日志压缩模块100,具体包括:
***事件日志生成单元110,用于在传感器事件触发时生成***事件原始日志;
故障诊断日志生成单元120,用于在检测到故障发生时生成故障诊断原始日志;
审计日志生成单元130,用于在用户登陆发送IPMI指令时生成审计日志原始日志。
在本实施例中,在本申请中,所述生成BMC原始日志包括***事件日志、故障诊断日志以及审计日志;其中,***事件日志原始日志内容包括时间、传感器类型、事件描述;故障诊断日志原始日志包含时间、设备类型、事件描述;审计日志原始日志包括时间、接口类型、事件描述。
需要是说明的是,***事件日志、故障诊断日志以及审计原始日志皆包含时间、类型、事件描述,能统一转换为压缩日志。
本发明实施例还提供了一种计算机设备,该计算机设备包括显示屏、存储器、处理器以及计算机程序,其中,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述BMC日志压缩提取方法的步骤。
生成BMC原始日志;
获取BMC原始日志数据,对BMC原始日志进行压缩转换;
获取日志记录描述;
对BMC日志进行提取;
将事件描述项后回填给WEB端进行显示,实现WEB显示。
可以理解的是,在本发明提供的优选实施例中,该计算机设备还可以为笔记本电脑、个人数字助理(Personal Digital Assistant,PDA)、手机等可以进行通信的设备。
本发明实施例还提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述BMC日志压缩提取方法的步骤。
生成BMC原始日志;
获取BMC原始日志数据,对BMC原始日志进行压缩转换;
获取日志记录描述;
对BMC日志进行提取;
将事件描述项后回填给WEB端进行显示,实现WEB显示。
示例性的,计算机程序可以被分割成一个或多个模块,一个或者多个模块被存储在存储器中,并由处理器执行,以完成本发明。一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在终端设备中的执行过程。例如,上述计算机程序可以被分割成上述各个***实施例提供的BMC日志压缩提取***的单元或模块。
本领域技术人员可以理解,上述终端设备的描述仅仅是示例,并不构成对终端设备的限定,可以包括比上述描述更多或更少的部件,或者组合某些部件,或者不同的部件,例如可以包括输入输出设备、网络接入设备、总线等。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,上述处理器是上述终端设备的控制中心,利用各种接口和线路连接整个用户终端的各个部分。
上述存储器可用于存储计算机程序和/或模块,上述处理器通过运行或执行存储在存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现上述终端设备的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序等;存储数据区可存储根据BMC日志压缩提取***的使用所创建的数据。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例***中的全部或部分模块/单元,也可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个***实施例的功能。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。
本发明通过将事件描述转换成索引号,将长字符串通过短的字符编码来替换,记录索引号到文件中,解决由于日志事件描述字符多且描述重复导致占用存储空间大的问题,同时本申请中日志记录为二进制文件,无法直接解析,信息安全得到保障。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (10)
1.一种BMC日志压缩提取方法,其特征在于,所述BMC日志压缩提取方法包括以下步骤:
生成BMC原始日志;
获取BMC原始日志数据,对BMC原始日志进行压缩转换;
获取日志记录描述;
对BMC日志进行提取;
将事件描述项后回填给WEB端进行显示,实现WEB显示。
2.根据权利要求1所述的方法,其特征在于,所述生成BMC原始日志包括***事件日志、故障诊断日志以及审计日志;
其中,***事件日志原始日志内容包括时间、传感器类型、事件描述;
故障诊断日志原始日志包含时间、设备类型、事件描述;
审计日志原始日志包括时间、接口类型、事件描述。
3.根据权利要求2所述的方法,其特征在于,***事件日志、故障诊断日志以及审计原始日志皆包含时间、类型、事件描述,能统一转换为压缩日志。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述生成BMC原始日志的方法,具体包括:
传感器事件触发时生成***事件原始日志;
检测到故障发生时生成故障诊断原始日志;
用户登陆发送IPMI指令时生成审计日志原始日志。
5.根据权利要求1至3任一项所述的方法,其特征在于,所述获取日志记录描述的方法,具体包括:
BMC启动,日志压缩提取模块将存放在flash当中的JSON文件进行加载并解析;
日志压缩提取进程启动;
判断flash中是否存在已经生成的JSON文件,如果不存在JSON文件,新建一个空的JSON文件,并初始化对应的结构体数组为空;
如果存在JSON文件,按照格式读取JSON文件,并将获取后的数据保存到结构体数组中。
6.根据权利要求5所述的方法,其特征在于,所述获取BMC原始日志数据,对BMC原始日志进行压缩转换的方法,具体包括:
接收到一条新的日志记录;
根据原始日志中description在初始化后的结构体数组当中顺序查找相同的description;
如果未找到,计算出结构体数组中最大的index,并加1,作为新的日志事件描述记录项的index,将新的index返回,并同步到JSON文件当中,保证结构体数组和JSON文件相同。
7.根据权利要求6所述的方法,其特征在于,所述对BMC原始日志进行压缩转换的方法,具体还包括:
如果找到相同的description,则直接返回index;
最后将返回的index替换掉原始日志记录当中的description,添加时间戳、类型值以二进制形式将日志记录保存到对应的日志文件中。
8.根据权利要求5所述的方法,其特征在于,所述对BMC日志进行提取的方法,具体包括:
WEB端获取查看请求;
获取日志文件;
循环读取日志中每行数据,读取到这一条日志中index数值;
使用该index数值遍历查找结构体数组,若无法找到,执行错误处理;
找到对应description,使用该description,将时间戳转换为当前时间添加事件类型;
若没有找到,则该条日志显示空。
9.一种BMC日志压缩提取***,其特征在于,所述BMC日志压缩提取***包括:
BMC日志压缩模块,将原始日志与日志事件描述表中的事件描述项进行匹配,找到日志事件描述表中的事件描述项对应的索引号,使用索引号替换掉事件描述项保存到日志文件中;
BMC日志提取模块,用于提取BMC日志,提取时根据日志文件当中的索引号,查找日志事件描述表对应的事件描述项,找到后将事件描述项后回填给WEB端进行显示。
10.根据权利要求9所述的***,其特征在于,所述BMC日志压缩模块,具体包括:
***事件日志生成单元,用于在传感器事件触发时生成***事件原始日志;
故障诊断日志生成单元,用于在检测到故障发生时生成故障诊断原始日志;
审计日志生成单元,用于在用户登陆发送IPMI指令时生成审计日志原始日志。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211182360.9A CN115905119A (zh) | 2022-09-27 | 2022-09-27 | 一种bmc日志压缩提取方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211182360.9A CN115905119A (zh) | 2022-09-27 | 2022-09-27 | 一种bmc日志压缩提取方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115905119A true CN115905119A (zh) | 2023-04-04 |
Family
ID=86492338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211182360.9A Pending CN115905119A (zh) | 2022-09-27 | 2022-09-27 | 一种bmc日志压缩提取方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115905119A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116841836A (zh) * | 2023-09-01 | 2023-10-03 | 四川华鲲振宇智能科技有限责任公司 | 一键式日志收集工具 |
-
2022
- 2022-09-27 CN CN202211182360.9A patent/CN115905119A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116841836A (zh) * | 2023-09-01 | 2023-10-03 | 四川华鲲振宇智能科技有限责任公司 | 一键式日志收集工具 |
CN116841836B (zh) * | 2023-09-01 | 2023-11-07 | 四川华鲲振宇智能科技有限责任公司 | 一键式日志收集工具 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110909063B (zh) | 一种用户行为的分析方法、装置、应用服务器及存储介质 | |
CN112636957B (zh) | 基于日志的预警方法、装置、服务器及存储介质 | |
CN110569214A (zh) | 用于日志文件的索引构建方法、装置及电子设备 | |
CN111258722A (zh) | 一种集群的日志采集方法、***、设备以及介质 | |
CN112788270B (zh) | 视频回溯方法、装置、计算机设备及存储介质 | |
CN110995273B (zh) | 电力数据库的数据压缩方法、装置、设备及介质 | |
CN110941530B (zh) | 监控数据的获取方法、装置、计算机设备和存储介质 | |
KR20090065202A (ko) | 단말기 메모리 데이터 추출 장치 및 그 방법 | |
US11989161B2 (en) | Generating readable, compressed event trace logs from raw event trace logs | |
CN115905119A (zh) | 一种bmc日志压缩提取方法及*** | |
CN111400170A (zh) | 一种数据权限测试方法及装置 | |
CN113760617A (zh) | 故障处理方法及装置、设备、存储介质 | |
CN114518984A (zh) | 一种埋点信息的上报方法、装置、存储介质及终端设备 | |
CN113382268B (zh) | 直播异常分析方法、装置、计算机设备和存储介质 | |
CN110096478B (zh) | 文档索引生成方法及设备 | |
CN110032432B (zh) | 实例的压缩方法和装置、实例的解压方法和装置 | |
CN114879985B (zh) | 一种证书文件的安装方法、装置、设备及存储介质 | |
CN112612830B (zh) | 一种压缩数据批量导出方法、***及电子设备 | |
CN104637496A (zh) | 计算机***及音频比对方法 | |
WO2020211371A1 (zh) | 图像恢复方法、装置、设备和存储介质 | |
CN111045983A (zh) | 核电站电子文件管理方法、装置、终端设备及介质 | |
CN113010481B (zh) | 文件捕获方法、装置、终端和存储介质 | |
CN113360454B (zh) | 一种内存快照文件的压缩、解压缩方法及相关装置 | |
CN117389769B (zh) | 基于云服务的浏览器端富文本拷贝方法、***及云平台 | |
CN116778978A (zh) | 文件的修复方法、装置、终端设备和可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |