掌桥专利:专业的专利平台
掌桥专利
首页

计算机日志的分类方法和装置、存储介质及电子装置

文献发布时间:2023-06-19 12:18:04


计算机日志的分类方法和装置、存储介质及电子装置

技术领域

本发明涉及通信领域,具体而言,涉及一种计算机日志的分类方法和装置、存储介质及电子装置。

背景技术

随着互联网用户的快速增长,互联网服务单体架构已经不能满足需求,分布式系统应运而生,日志数量急速增加,对于开发人员来讲,对目标任务的日志信息的获取成为迫切需求。

现有技术中,对于Azkaban任务运行日志,只提供了各个界面的点击查看,可查询运行中、运行成功、运行失败的任务列表。但是并不能查询到日志信息以及日志信息的性质,因此,目前通过配置关键词筛选出来日志信息,但是由于配置的关键词较少,会遗漏一部分日志信息,而且获取到的日志信息,没有做错误分类,只是起到告警的作用,无法指导开发人员进行任务优化。

针对相关技术中,由于配置的关键词缺少,会遗漏部分日志信息且获取的日志信息只能起到告警的作用,无法指导开发人员进行任务优化等问题。

发明内容

本发明实施例提供了一种计算机日志的分类方法和装置、存储介质及电子装置,以至少解决相关技术中,由于配置的关键词缺少,会遗漏部分日志信息且获取的日志信息只能起到告警的作用,无法指导开发人员进行任务优化等问题。

根据本发明实施例的一个实施例,提供了一种计算机日志的分类方法,包括:读取目标任务的日志信息,并将所述日志信息的属性信息保存至数据库,其中,所述属性信息包括:所述日志信息对应的运行编码;通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息;将所述第一日志信息保存至所述数据库,并接收目标对象根据所述日志信息的运行环境对所述第一日志信息进行类型标注的标注操作。

在一个示例性实施例中,接收目标对象根据所述日志信息的运行环境对所述第一日志信息进行类型标注的标注操作之后,所述方法还包括:通过所述运行编码将所述属性信息与所述第一日志信息进行关联,得到第一数据;根据所述第一数据构建图表,其中,所述图表用于指示所述第一日志信息的基本信息,其中,所述基本信息至少包括以下之一:第一日志信息的类型、第一日志信息的日期、第一日志信息对应的开发人员。

在一个示例性实施例中,读取目标任务的日志信息,包括:为所述目标任务构建连接池,并通过所述连接池链接配置库,其中,所述配置库用于存储第一预设格式的日志;通过预设方式筛选日志,以得到第二日志信息,其中,所述第二日志信息为第一预设格式的日志;将所述第二日志信息转化为第二预设格式的日志信息,以获取所述第二预设格式的日志信息。

在一个示例性实施例中,通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息之前,包括:将所述日志信息的属性信息中的公共信息进行过滤,得到第三日志信息,其中,所述公共信息至少包括以下之一:目标任务的服务启动参数,目标任务的添加日期参数、目标任务的名称参数。

在一个示例性实施例中,通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息之后,包括:设置第一关键词,其中,所述第一关键词用于指示所述日志信息的属性信息中的引用包的词语;根据所述第一关键词对所述第一日志信息进行过滤;通过过滤后的第一日志信息确定第四日志信息,其中,所述第四日志信息用于指示不包含所述第一关键词的日志。

在一个示例性实施例中,将所述第一日志信息保存至数据库之前,包括:通过第二关键词获取在所述日志信息中所述第二关键词的行信息;调用翻译接口,对获取到的所述行信息进行翻译;所述运行编码、所述第二关键词、所述翻译后的行信息组成第二数据,其中,所述第二数据用于保存在所述数据库中。

根据本发明实施例的另一个实施例,还提供了一种计算机日志的分类装置,包括:读取模块,用于读取目标任务的日志信息,并将所述日志信息的属性信息保存至数据库,其中,所述属性信息包括:所述日志信息对应的运行编码;过滤模块,用于通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息;接收模块,用于将所述第一日志信息保存至所述数据库,并接收目标对象根据所述日志信息的运行环境对所述第一日志信息进行类型标注的标注操作。

在一个示例性实施例中,上述装置还包括:构建模块,用于通过所述运行编码将所述属性信息与所述第一日志信息进行关联,得到第一数据;根据所述第一数据构建图表,其中,所述图表用于指示所述第一日志信息的基本信息,其中,所述基本信息至少包括以下之一:第一日志信息的类型、第一日志信息的日期、第一日志信息对应的开发人员。

根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述计算机日志的分类方法。

根据本发明实施例的又一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的计算机日志的分类方法。

在本发明实施例中,读取目标任务的日志信息,并将所述日志信息的属性信息保存至数据库,其中,所述属性信息包括:所述日志信息对应的运行编码;通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息;将所述第一日志信息保存至所述数据库,并接收目标对象根据所述日志信息的运行环境对所述第一日志信息进行类型标注的标注操作,即通过对日志信息的属性信息进行过滤,以得到第一日志信息,进而通过目标对象的标注操作对第一日志信息的类型进行标注。采用上述技术方案,解决了相关技术中,由于配置的关键词缺少,会遗漏部分日志信息且获取的日志信息只能起到告警的作用,无法指导开发人员进行任务优化等问题,也就是说,通过预设算法对所述日志信息的属性信息进行过滤以获取第一日志信息,提高了获取日志信息的数量,通过目标对象的标注操作对第一日志信息的类型进行标注,可以为任务分析优化提供决策。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是本发明实施例的一种计算机日志的分类方法的计算机终端的硬件结构框图;

图2是根据本发明实施例的计算机日志的分类方法的流程图;

图3是根据本发明实施例的计算机日志的分类方法的示意图;

图4是根据本发明实施例的一种计算机日志的分类装置的结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

本申请实施例所提供的方法实施例可以在计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种计算机日志的分类方法的计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,在一个示例性实施例中,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示等同功能或比图1所示功能更多的不同的配置。

存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的计算机日志的分类方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。

在本实施例中提供了一种计算机日志的分类方法,应用于上述计算机终端,图2是根据本发明实施例的计算机日志的分类方法的流程图,该流程包括如下步骤:

步骤S202,读取目标任务的日志信息,并将所述日志信息的属性信息保存至数据库,其中,所述属性信息包括:所述日志信息对应的运行编码;

步骤S204,通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息;

步骤S206,将所述第一日志信息保存至所述数据库,并接收目标对象根据所述日志信息的运行环境对所述第一日志信息进行类型标注的标注操作。

通过上述步骤,读取目标任务的日志信息,并将所述日志信息的属性信息保存至数据库,其中,所述属性信息包括:所述日志信息对应的运行编码;通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息;将所述第一日志信息保存至所述数据库,并接收目标对象根据所述日志信息的运行环境对所述第一日志信息进行类型标注的标注操作,即通过对日志信息的属性信息进行过滤,以得到第一日志信息,进而通过目标对象的标注操作对第一日志信息的类型进行标注,解决了相关技术中,由于配置的关键词缺少,会遗漏部分日志信息且获取的日志信息只能起到告警的作用,无法指导开发人员进行任务优化等问题,也就是说,通过预设算法对所述日志信息的属性信息进行过滤以获取第一日志信息,提高了获取日志信息的数量,通过目标对象的标注操作对第一日志信息的类型进行标注,可以为任务分析优化提供决策。

需要说明的是,在步骤S206中,还可以根据所述目标对象根据所述日志信息的运行环境对所述第一日志信息进行类型标注的标注操作训练模型,以使所述计算机终端可以通过训练后的模型根据日志信息的运行环境对所述第一日志信息进行类型标注,在所述预设算法为TF-IDF算法的情况下,TF部分计算词频(某个词在日志中出现的次数),IDF部分计算逆文档频率(log(日志文档总数/(包含该词的如日志数+1))),TF-IDF=词频(TF)*逆文档频率(IDF),实现过滤出现频繁但没有意义的词,在文档库中选择词频较低的关键词,实现第一步的抓取。结合词性,增加词性权重,以便更加精确的抓取到关键词。

在一个示例性实施例中,接收目标对象根据所述日志信息的运行环境对所述第一日志信息进行类型标注的标注操作之后,通过所述运行编码将所述属性信息与所述第一日志信息进行关联,得到第一数据;根据所述第一数据构建图表,其中,所述图表用于指示所述第一日志信息的基本信息,其中,所述基本信息至少包括以下之一:第一日志信息的类型、第一日志信息的日期、第一日志信息对应的开发人员。

也就是说,在根据目标对象标注操作对第一日志信息进行类型标注之后,通过运行编码将目标任务的属性信息和第一日志信息进行关联,组合成第一数据,并根据所述第一数据构建图表,其中,所述图表可以是:饼图、列表,本发明实施例对此不做限定,所述图表可以通过日期、开发人员、报错类型等类型进行筛选统计,分析某个任务或某类任务,对于报错类型的数量大于预设阈值的情况下,发出告警信号,并为开发人员提供优化指导,所述图表还包括跳转链接,通过点击图表中的跳转链接,查看第一日志信息,进而方便处理日志信息。

在一个示例性实施例中,为所述目标任务构建连接池,并通过所述连接池链接配置库,其中,所述配置库用于存储第一预设格式的日志;通过预设方式筛选日志,以得到第二日志信息,其中,所述第二日志信息为第一预设格式的日志;将所述第二日志信息转化为第二预设格式的日志信息,以获取所述第二预设格式的日志信息。

具体的,目标任务的日志会以第一预设格式的形式保存到配置库中,通过Python为目标任务构建连接池,并通过所述连接池链接目标任务的配置库,通过预设方式对目标任务的日志进行筛选,以获得第二日志信息,其中所述预设方式包括:status='70',进而将第一预设格式的日志转化为第二预设格式的日志信息,以读取所述第二预设格式的日志信息。进一步的,将第二预设格式的日志信息的工程名称、flow名称、job名称、运行编码、运行机器、工程描述、任务启动时间、任务结束时间等目标任务的属性信息保存至Mysql数据库中。

举例来讲,目标任务的日志以gzip压缩的形式保存到配置库中,通过gzip.decompress(logs).decode('utf-8')将第二日志信息信息进行解压,转化成utf8格式。

在一个示例性实施例中,通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息之前,将所述日志信息的属性信息中的公共信息进行过滤,得到第三日志信息,其中,所述公共信息至少包括以下之一:目标任务的服务启动参数,目标任务的添加日期参数、目标任务的名称参数。

换言之,日志信息中包含着目标任务的服务启动参数,目标任务的添加日期参数、目标任务的名称参数等公共信息,通过使用正则表达式[re.sub(r'\d+-\d+-\d+\d+:\d+:\d+CST{}INFO-'.format(job_name),”,x)for x in logs]将打印的公共信息过滤掉,以对所述日志信息进行初步的预过滤处理,需要说明的是,通过使用正则表达式对所述日志信息的公共信息进行过滤的方式仅是一种示例,本发明实施例对此不做限定。

在一个示例性实施例中,通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息之后,包括:设置第一关键词,其中,所述第一关键词用于指示所述日志信息的属性信息中的引用包的词语;根据所述第一关键词对所述第一日志信息进行过滤;通过过滤后的第一日志信息确定第四日志信息,其中,所述第四日志信息用于指示不包含所述第一关键词的日志。

即通过设置第一关键词对所述日志信息的属性信息中的引用包的词语进行过滤,例如java、python、hadoop、apache、hdfs等词进行过滤。

在一个示例性实施例中,将所述第一日志信息保存至数据库之前,通过第二关键词获取在所述日志信息中所述第二关键词的行信息;调用翻译接口,对获取到的所述行信息进行翻译;所述运行编码、所述第二关键词、所述翻译后的行信息组成第二数据,其中,所述第二数据用于保存在所述数据库中。

将第一日志信息按照换行符进行分隔,使用第二关键词对第一日志信息进行扫描,获取第二关键词所在行信息,由于日志信息基本都是英文的,调用翻译接口,将获取到的行信息进行翻译成中文,形成单独一列。经过处理后,会形成含有运行编码、所述第二关键词、所述翻译后的行信息等多列信息。另通过运行编码将运行编码、所述第二关键词、所述翻译后的行信息等多列信息进行组合,获取第二数据,并将第二数据保存至数据库。

为了更好的理解上述计算机日志的分类方法的过程,以下再结合可选实施例对上述计算机日志的分类的实现方法流程进行说明,但不用于限定本发明实施例的技术方案。

在本实施例中提供了一种计算机日志的分类方法,图3是根据本发明实施例的计算机日志的分类方法的示意图,如图3所示,具体如下步骤:

步骤S301:启动Azkaban任务(相当于上述实施例中的目标任务);

步骤S302:将Azkaban日志发送至配置库,(相当于上述实施例中的日志)将Azkaban日志以gzip压缩的形式(相当于上述实施例中的第一预设格式)保存到配置库中;

步骤S303:Python构建连接池,并通过所述连接池链接Azkaban配置库,通过status='70'对Azkaban日志进行筛选,以获取第一错误日志(相当于上述实施例中的第二日志信息);

步骤S304:使用gzip.decompress(logs).decode('utf-8')将gzip格式的第一错误日志进行解压,转化成utf8格式(相当于上述实施例中的第二预设格式)的错误日志(相当于上述实施例中的日志信息);

步骤S305:读取所述错误日志,将错误日志信的工程名称、flow名称、job名称、运行编码、运行机器、工程描述、任务启动时间、任务结束时间等Azkaban任务的属性信息推送至Mysql数据库中;

步骤S306:对错误日志进行解析,得到第一数据;

具体的:

步骤S3061:通过使用正则表达式[re.sub(r'\d+-\d+-\d+\d+:\d+:\d+CST{}INFO-'.format(job_name),”,x)for x in logs]对错误日志中的服务启动,添加的日期、任务名称参数等公共信息进行过滤;

步骤S3062:通过Python基于TF-IDF算法优化实现,TF部分计算词频(某个词在日志中出现的次数),IDF部分计算逆文档频率(log(日志文档总数/(包含该词的如日志数+1))),TF-IDF=词频(TF)*逆文档频率(IDF),实现过滤出现频繁但没有意义的词,在文档库中选择词频较低的关键词,实现第一步的抓取。结合词性,增加词性权重,以便更加精确的抓取到关键词;

步骤S3063:设置第一关键词,以对错误日志中的第一关键词进行过滤,例如对java、python、hadoop、apache、hdfs等词进行过滤;

步骤S3064:将文本日志按照换行符进行分隔,[x for x in logs if re.match(r'keyword:.+',x)]使用第二关键词在错误日志中进行扫描,获取第二关键词所在行信息;

步骤S3065:调用翻译api,将获取到的行信息进行翻译成中文,形成单独一列。经过处理后,会形成含有运行编码、报错关键信息、报错关键信息中文版等多列信息,并且通过运行编码将含有运行编码、报错关键信息、报错关键信息中文版等多列信息进行组合得到第一数据。

步骤S307:将第一数据写入到Mysql数据库中;

步骤S308:根据实际运行环境对错误日志信息进行类型标注,例如:外部数据源问题、数据任务依赖问题、数据开发问题、平台资源问题、服务链接问题等;

步骤S309:通过运行编码将任务属性信息和报错日志关键信息进行关联,组合成完整数据;

步骤S310:将所述完整数据发送至构建图表的工具;

步骤S311:构建图表的工具读取完整数据,并根据完整数据构建图表(饼图、列表),可通过日期、开发人、报错类型等进行筛选统计,进而分析某个任务或某类任务。

通过上述步骤,读取Azkaban任务的错误日志,并将所述错误日志的属性信息保存至数据库,其中,所述属性信息包括:所述错误日志对应的运行编码;通过预设算法对所述错误日志的属性信息进行过滤,从过滤后的结果中获取第一错误日志;将所述第一错误日志保存至所述数据库,并接收目标对象根据所述错误日志的运行环境对所述第一错误日志进行类型标注的标注操作,即通过对错误日志的属性信息进行过滤,以得到第一错误日志,进而通过目标对象的标注操作对第一错误日志的类型进行标注,解决了相关技术中,由于配置的关键词缺少,会遗漏部分错误日志且获取的错误日志只能起到告警的作用,无法指导开发人员进行任务优化等问题。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。

图4是根据本发明实施例的一种计算机日志的分类装置的结构框图;如图4所示,包括:

读取模块42,用于读取目标任务的日志信息,并将所述日志信息的属性信息保存至数据库,其中,所述属性信息包括:所述日志信息对应的运行编码;

过滤模块44,用于通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息;

接收模块46,用于将所述第一日志信息保存至所述数据库,并接收目标对象根据所述日志信息的运行环境对所述第一日志信息进行类型标注的标注操作。

通过上述模块,读取目标任务的日志信息,并将所述日志信息的属性信息保存至数据库,其中,所述属性信息包括:所述日志信息对应的运行编码;通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息;将所述第一日志信息保存至所述数据库,并接收目标对象根据所述日志信息的运行环境对所述第一日志信息进行类型标注的标注操作,即通过对日志信息的属性信息进行过滤,以得到第一日志信息,进而通过目标对象的标注操作对第一日志信息的类型进行标注,解决了相关技术中,由于配置的关键词缺少,会遗漏部分日志信息且获取的日志信息只能起到告警的作用,无法指导开发人员进行任务优化等问题,也就是说,通过预设算法对所述日志信息的属性信息进行过滤以获取第一日志信息,提高了获取日志信息的数量,通过目标对象的标注操作对第一日志信息的类型进行标注,可以为任务分析优化提供决策。

需要说明的是,还可以根据所述目标对象根据所述日志信息的运行环境对所述第一日志信息进行类型标注的标注操作训练模型,以使所述计算机终端可以通过训练后的模型根据日志信息的运行环境对所述第一日志信息进行类型标注,在所述预设算法为TF-IDF算法的情况下,TF部分计算词频(某个词在日志中出现的次数),IDF部分计算逆文档频率(log(日志文档总数/(包含该词的如日志数+1))),TF-IDF=词频(TF)*逆文档频率(IDF),实现过滤出现频繁但没有意义的词,在文档库中选择词频较低的关键词,实现第一步的抓取。通过结合词性,增加词性权重,以便更加精确的抓取到关键词。

在一个示例性实施例中,上述装置还包括:构建模块,用于通过所述运行编码将所述属性信息与所述第一日志信息进行关联,得到第一数据;根据所述第一数据构建图表,其中,所述图表用于指示所述第一日志信息的基本信息,其中,所述基本信息至少包括以下之一:第一日志信息的类型、第一日志信息的日期、第一日志信息对应的开发人员。

也就是说,在根据目标对象标注操作对第一日志信息进行类型标注之后,通过运行编码将目标任务的属性信息和第一日志信息进行关联,组合成第一数据,并根据所述第一数据构建图表,其中,所述图表可以是:饼图、列表,本发明实施例对此不做限定,所述图表可以通过日期、开发人员、报错类型等类型进行筛选统计,分析某个任务或某类任务,对于报错类型的数量大于预设阈值的情况下,发出告警信号,并为开发人员提供优化指导,所述图表还包括跳转链接,通过点击图表中的跳转链接,查看第一日志信息,进而方便处理日志信息。

在一个示例性实施例中,构建模块,还用于为所述目标任务构建连接池,并通过所述连接池链接配置库,其中,所述配置库用于存储第一预设格式的日志;通过预设方式筛选日志,以得到第二日志信息,其中,所述第二日志信息为第一预设格式的日志;将所述第二日志信息转化为第二预设格式的日志信息,以获取所述第二预设格式的日志信息。

具体的,目标任务的日志会以第一预设格式的形式保存到配置库中,通过Python为目标任务构建连接池,并通过所述连接池链接目标任务的配置库,通过预设方式对目标任务的日志进行筛选,以获得第二日志信息,其中所述预设方式包括:status='70',进而将第一预设格式的日志转化为第二预设格式的日志信息,以读取所述第二预设格式的日志信息。进一步的,将第二预设格式的日志信息的工程名称、flow名称、job名称、运行编码、运行机器、工程描述、任务启动时间、任务结束时间等目标任务的属性信息保存至Mysql数据库中。

举例来讲,目标任务的日志以gzip压缩的形式保存到配置库中,通过gzip.decompress(logs).decode('utf-8')将第二日志信息信息进行解压,转化成utf8格式。

在一个示例性实施例中,通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息之前,过滤模块,还用于将所述日志信息的属性信息中的公共信息进行过滤,得到第三日志信息,其中,所述公共信息至少包括以下之一:目标任务的服务启动参数,目标任务的添加日期参数、目标任务的名称参数。

换言之,日志信息中包含着目标任务的服务启动参数,目标任务的添加日期参数、目标任务的名称参数等公共信息,通过使用正则表达式[re.sub(r'\d+-\d+-\d+\d+:\d+:\d+CST{}INFO-'.format(job_name),”,x)for x in logs]将打印的公共信息过滤掉,以对所述日志信息进行初步的预过滤处理,需要说明的是,通过使用正则表达式对所述日志信息的公共信息进行过滤的方式仅是一种示例,本发明实施例对此不做限定。

在一个示例性实施例中,通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息之后,过滤模块,还用于设置第一关键词,其中,所述第一关键词用于指示所述日志信息的属性信息中的引用包的词语;根据所述第一关键词对所述第一日志信息进行过滤;通过过滤后的第一日志信息确定第四日志信息,其中,所述第四日志信息用于指示不包含所述第一关键词的日志。

即通过设置第一关键词对所述日志信息的属性信息中的引用包的词语进行过滤,例如java、python、hadoop、apache、hdfs等词进行过滤。

在一个示例性实施例中,将所述第一日志信息保存至数据库之前,上述装置还包括:翻译模块,用于通过第二关键词获取在所述日志信息中所述第二关键词的行信息;调用翻译接口,对获取到的所述行信息进行翻译;所述运行编码、所述第二关键词、所述翻译后的行信息组成第二数据,其中,所述第二数据用于保存在所述数据库中。

将第一日志信息按照换行符进行分隔,使用第二关键词对第一日志信息进行扫描,获取第二关键词所在行信息,由于日志信息基本都是英文的,调用翻译接口,将获取到的行信息进行翻译成中文,形成单独一列。经过处理后,会形成含有运行编码、所述第二关键词、所述翻译后的行信息等多列信息。另通过运行编码将运行编码、所述第二关键词、所述翻译后的行信息等多列信息进行组合,获取第二数据,并将第二数据保存至数据库。

本发明的实施例还提供了一种存储介质,该存储介质包括存储的程序,其中,上述程序运行时执行上述任一项的方法。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:

S1,读取目标任务的日志信息,并将所述日志信息的属性信息保存至数据库,其中,所述属性信息包括:所述日志信息对应的运行编码;

S2,通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息;

S3,将所述第一日志信息保存至所述数据库,并接收目标对象根据所述日志信息的运行环境对所述第一日志信息进行类型标注的标注操作。

本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。

可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。

可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:

S1,读取目标任务的日志信息,并将所述日志信息的属性信息保存至数据库,其中,所述属性信息包括:所述日志信息对应的运行编码;

S2,通过预设算法对所述日志信息的属性信息进行过滤,从过滤后的结果中获取第一日志信息;

S3,将所述第一日志信息保存至所述数据库,并接收目标对象根据所述日志信息的运行环境对所述第一日志信息进行类型标注的标注操作。

可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 计算机日志的分类方法和装置、存储介质及电子装置
  • 日志分类方法、装置、计算机设备和存储介质
技术分类

06120113240722