分布式文件系统日志分析方法、系统、设备及存储介质与流程

文档序号:13808096阅读:141来源:国知局
分布式文件系统日志分析方法、系统、设备及存储介质与流程

本发明涉及计算机技术领域,特别涉及分布式文件系统日志分析方法、系统、设备及存储介质。



背景技术:

分布式文件系统集群在进行数据恢复、数据写入等操作时,由于操作较多使网络模块异常丢弃部分消息,导致集群状态异常,此时丢弃的消息为节点与节点之间的通信消息,通过日志查找造成集群状态异常的原因,需要查找多个节点的日志并分析,采用人工查找多个节点的日志的方法非常耗时,效率低。

因此,如何提高通过日志分析分布式文件系统丢弃消息原因的效率是本领域技术人员亟待解决的问题。



技术实现要素:

有鉴于此,本发明提供一种分布式文件系统日志分析方法、系统、设备及存储介质,目的在于提高通过分析日志分析分布式文件系统丢弃消息原因的效率。其具体方案如下:

一种分布式文件系统日志分析方法,包括:

获取分布式文件系统中丢弃信息的日志,得到目标日志;

利用日志分析程序,提取所述目标日志中的目标数据,并根据所述目标数据分析所述丢弃信息丢弃的原因;其中,所述目标数据为所述丢弃信息在发送、接收过程中生成的数据。

可选的,所述获取分布式文件系统中丢弃信息的日志,得到目标日志的过程之前还包括:

通过查询指令获取所述分布式文件系统中的所述丢弃信息。

可选的,所述获取分布式文件系统中丢弃信息的日志,得到目标日志的过程之前还包括:

根据所述丢弃信息获取该信息的发送端和接收端;其中,所述发送端创建第一虚连接,所述接收端创建第二虚连接,所述发送端和所述接收端通过所述第一虚连接和所述第二虚连接建立的连接进行通信。

可选的,所述利用日志分析程序,提取所述目标日志中的目标数据,并根据所述目标数据分析所述丢弃信息丢弃的原因的过程包括:

利用日志分析程序,通过查找指令,提取所述目标日志中的目标数据,并根据所述目标数据分析所述丢弃信息丢弃的原因;

其中,所述目标数据包括所述发送端向所述接收端发起建立连接的请求信息数据和/或所述接收端对所述发送端请求建立连接的响应信息数据和/或所述发送端向所述接收端发起断开连接的请求信息数据和/或所述接收端对所述发送端请求断开连接的响应信息数据和/或所述第一虚连接工作时生成的数据和/或所述第二虚连接工作时生成的数据。

可选的,所述丢弃信息丢弃的原因包括未找到虚连接或所述第一虚连接和所述第二虚连接的dst_id不一致或所述第一虚连接和所述第二虚连接的tcp连接为空。

相应的,本发明还公开了一种分布式文件系统日志分析系统,包括:

日志获取模块,用于获取分布式文件系统中丢弃信息的日志,得到目标日志;

数据分析模块,用于利用日志分析程序,提取所述目标日志中的目标数据,并根据所述目标数据分析所述丢弃信息丢弃的原因;其中,所述目标数据为所述丢弃信息在发送、接收过程中生成的数据。

可选的,所述日志获取模块之前还包括:

信息获取模块,用于通过查询指令获取所述分布式文件系统中的所述丢弃信息。

可选的,所述日志获取模块之前还包括:

数据获取模块,用于根据所述丢弃信息获取该信息的发送端和接收端。

可选的,所述数据分析模块,具体用于利用日志分析程序,通过查找指令,提取所述目标日志中的目标数据,并根据所述目标数据分析所述丢弃信息丢弃的原因;

其中,所述目标数据包括所述发送端向所述接收端发起建立连接的请求信息数据和/或所述接收端对所述发送端请求建立连接的响应信息数据和/或所述发送端向所述接收端发起断开连接的请求信息数据和/或所述接收端对所述发送端请求断开连接的响应信息数据和/或所述第一虚连接工作时生成的数据和/或所述第二虚连接工作时生成的数据。

本发明还公开了一种分布式文件系统日志分析设备,所述分布式文件系统日志分析设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的分布式文件系统日志分析程序,所述分布式文件系统日志分析程序配置为实现上述的分布式文件系统日志分析方法的步骤。

本发明还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有分布式文件系统日志分析程序,所述分布式文件系统日志分析程序被处理器执行时实现上述的分布式文件系统日志分析方法的步骤。

可见,本发明提供的分布式文件系统日志分析方法,通过获取分布式文件系统中丢弃信息的日志,得到目标日志;利用日志分析程序,提取所述目标日志中的目标数据,并根据所述目标数据分析所述丢弃信息丢弃的原因;其中,所述目标数据为所述丢弃信息在发送、接收过程中生成的数据。本发明通过对造成信息丢弃原因的分析,得到丢弃信息日志中对分析丢弃原因有用的数据,即目标数据;利用日志分析程序,重点分析目标数据,得到目标丢弃信息丢弃的原因。与人工分析丢弃信息原因相比,大幅度缩短查找目标数据的时间,从而缩短通过日志分析分布式文件系统丢弃消息原因的时间,进而提高通过日志分析分布式文件系统丢弃消息原因的效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的一种分布式文件系统日志分析方法的流程图;

图2为本发明实施例提供的另外一种分布式文件系统日志分析方法的流程图;

图3为本发明实施例提供的一种分布式文件系统日志分析系统的结构示意图。

具体实施方式

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

本发明实施例公开了一种分布式文件系统日志分析方法,如图1所示,包括:

步骤s11:获取分布式文件系统中丢弃信息的日志,得到目标日志。

需要进行说明的是,计算机技术中信息通常是指指定对象的某些操作和其操作结果按时间有序的集合。每个日志文件由日志记录组成,每条日志记录描述了一次单独的系统事件。

需要进行说明的是,上述获取目标日志包括但不限于获取丢弃信息的发送端和接收端双方的日志。丢弃信息的日志包括的数据包括但不限于丢弃信息生成的时间、消息类型、消息描述、消息序号、消息的发送端、消息的接收端、发送端发送的时间、接收端接收的时间及对应的dst_id、src_id信息。

需要进一步解释的是:上述src_id和dst_id是发送的消息中包含的编号,其中src_id表示该消息发送端的编号,dst_id表示消息接收端的编号。接收端和发送端双方创建的虚连接中也保存一份src_id和dst_id。可以理解的是,当发送端和接收端建立连接时,那么,发送端的src_id和接收端的dst_id一定是相同的。

步骤s12:利用日志分析程序,提取目标日志中的目标数据,并根据目标数据分析丢弃信息丢弃的原因;其中,目标数据为丢弃信息在发送、接收过程中生成的数据。

其中,对于步骤s12中收集目标数据的原因为:在多次人工分析丢弃信息丢弃原因的过程中,总结出根据丢弃信息在发送、接收过程中生成的数据能够分析出丢弃信息丢弃原因。因此,步骤s12中利用日志分析程序,分析目标数据以得到丢弃信息丢弃的原因。

可见,本发明提供的分布式文件系统日志分析方法,通过获取分布式文件系统中丢弃信息的日志,得到目标日志;利用日志分析程序,提取目标日志中的目标数据,并根据目标数据分析丢弃信息丢弃的原因;其中,目标数据为丢弃信息在发送、接收过程中生成的数据。本发明通过对造成信息丢弃原因的分析,得到丢弃信息日志中对分析丢弃原因有用的数据,即目标数据;利用日志分析程序,重点分析目标数据,得到目标丢弃信息丢弃的原因。与人工分析丢弃信息原因相比,大幅度缩短了查找目标数据的时间,从而缩短了通过日志分析分布式文件系统丢弃消息原因的时间,提高了通过日志分析分布式文件系统丢弃消息原因的效率。

本发明还公开了另外一种分布式文件系统日志分析方法,如图2所示,包括:

步骤s21:通过查询指令获取分布式文件系统中的丢弃信息。

需要进行说明的是,通过查询指令获取目标丢弃信息的过程可以根据丢弃信息存储的位置进行查找,也可以通过丢弃信息的类型进行查找,当然也可以根据用户的需要对特定的丢弃信息进行查找。

步骤s22:根据丢弃信息获取该信息的发送端和接收端;其中,发送端创建第一虚连接,接收端创建第二虚连接,发送端和接收端通过第一虚连接和第二虚连接建立的连接进行通信。

其中,丢弃信息的接收端和发送端之间进行通信以举例的方式进行说明:

发送端向接收端发起连接,此时发送端创建第一虚连接,第一虚连接状态为vcon_connecting,发送端向接收端发送msg_connect消息请求与接收端建立虚连接。接收端收到msg_connect消息后先创建对应的第二虚连接,将第二虚连接状态设置为vcon_connected并设置第二虚连接的dst_id。

然后接收端利用第二虚连接向发送端发送msg_accept消息回应发送端,表明接收端已接收连接请求。发送端收到msg_accept消息后将第一虚连接的状态修改为vcon_connected并修改第一虚连接的dst_id,此时发送端与接收端建立虚连接成功,才能收发正常的业务消息。

需要进行补充说明的是,上述vcon_connecting,vcon_conne-cted分别为正在连接、已连接状态。

步骤s23:获取分布式文件系统中丢弃信息的日志,得到目标日志。

上述丢弃信息的日志包括的数据有但不限于丢弃信息生成的时间、发送端、接收端、发送端发送的时间、接收端接收的时间及对应的dst_id信息。

步骤s24:利用日志分析程序,通过查找指令,提取目标日志中的目标数据,并根据目标数据分析丢弃信息丢弃的原因;

其中,目标数据包括发送端向接收端发起建立连接的请求信息数据、接收端对发送端请求建立连接的响应信息数据、发送端向接收端发起断开连接的请求信息数据、接收端对发送端请求断开连接的响应信息数据、第一虚连接工作时生成的数据、第二虚连接工作时生成的数据。

关于丢弃信息丢弃的原因包括但不限于未找到虚连接、第一虚连接和第二虚连接的dst_id不一致、第一虚连接和第二虚连接的tcp连接为空。

需要进行说明的是,利用上述目标数据可以分析出丢弃信息丢弃的原因。其中,对第一虚连接和第二虚连接的dst_id不一致具体说明:上述src_id和dst_id是发送的消息中包含的编号,其中src_id表示该消息发送端的编号,dst_id表示消息接收端的编号。收发双方的虚连接中也保存一份src_id和dst_id。可以理解的是,当发送端和接收端建立连接,那么,发送端的src_id和接收端的dst_id一定是相同的。当接收端收到发送端发送的消息时,接收端将消息中的src_id和接收端创建的虚连接中的dst_id进行对比,如果src_id和dst_id不一致就会丢弃该消息;如果src_id和dst_id一致就会接收发送端发送的信息。此外,当丢弃信息生成的日志中只有第一虚连接数据,即可判断该丢弃信息丢弃的原因是未找到接收端的第二虚连接。

可见,本发明实施例通过大幅度缩短了查找目标数据的时间,从而缩短了通过日志分析分布式文件系统丢弃消息原因的时间,进而提高了通过日志分析分布式文件系统丢弃消息原因的效率;其中,目标数据包括发送端向接收端发起建立连接的请求信息数据、接收端对发送端请求建立连接的响应信息数据、发送端向接收端发起断开连接的请求信息数据、接收端对发送端请求断开连接的响应信息数据、第一虚连接工作时生成的数据、第二虚连接工作时生成的数据。

本发明实施例还公开了一种分布式文件系统日志分析方法的具体实施过程,包括:

首先筛选网络模块主流程的关键步骤。网络模块虚连接的状态有4种:vcon_connecting,vcon_connected,vcon_mark_downing,vcon_osd_stop,分别标识正在连接、已连接、正在断开、已停止;网络模块发起连接时会向接收端发送msg_connect消息,接收端接收请求连接时回应msg_accept消息;断开连接时向接收端发送msg_vcon_remove消息,接收端收到后回应msg_remove_vcon_ack消息。

结合上面的4种状态可以将虚连接建立和断开的过程解释为:

发送端向接收端发起连接,此时发送端创建虚连接a,虚连接a状态为vcon_connecting,发送端向接收端发送msg_connect消息请求与接收端建立虚连接。接收端收到msg_connect消息后先创建虚连接b,将虚连接状态设置为vcon_connected并设置虚连接b的dst_id;

然后接收端利用虚连接b向发送端发送msg_accept消息回应发送端已接收连接请求。发送端收到msg_accept消息后将虚连接a的状态修改为vcon_connected并修改虚连接a的dst_id,此时接收端与发送端建立虚连接成功,才能收发正常的业务消息;发送节点和接收节点通过各自的虚连接a、b处理业务消息。

虚连接a、b是依赖发送节点和接收节点之间的tcp连接进行网络通信。当发送端主动断开连接时发送端将虚连接a修改为vcon_mark_downing,并向接收端发送msg_vcon_remove消息。接收端收到msg_vcon_remove消息后将虚连接b修改为vcon_osd_stop,并向发送端发送msg_remove_vcon_ack消息,将虚拟连接实例b从数据结构中删除。发送端收到msg_remove_vcon_ack消息后将虚连接a的状态修改为vcon_osd_stop,然后将虚连接a从数据结构中删除。

发送节点和接收节点收到业务消息时先查找虚连接,找到后利用虚连接处理业务消息,也利用虚连接发送业务消息;若未找到虚连接则丢弃该业务消息,若业务消息中的dst_id与找到的虚连接的dst_id不一致也丢弃该业务消息,若虚连接对应的tcp连接为空同样也丢弃该业务消息。

为了从日志中得到完整的信息,需要将连接建立过程中发起连接、接收连接发送msg_accept消息、收到msg_accept消息、发送msg_vcon_remove消息、从数据结构中删除虚连接、发送msg_remove_vcon_ack等步骤信息输出到日志中去,以0级别日志输出并加上特定关键字以及消息id、发送等级等详细信息。其次要在网络模块中增加查询接口,可通过命令查询有无丢弃消息,以及丢弃信息的发送端和输出端。

最后,知道了丢弃的消息是哪个节点哪个模块发送给本节点哪个模块之后丢弃,设计一个自动化分析程序,可以根据两端的ip信息和模块信息自动查找对应模块的日志文件,通过日志文件中的关键字进行遍历,输出最有用的信息,快速确定丢弃信息的原因。

相应的,本发明实施例还公开了一种分布式文件系统日志分析系统,如图3所示,包括:

日志获取模块11,用于获取分布式文件系统中丢弃信息的日志,得到目标日志。

需要进行说明的是,计算机技术中信息通常为指定对象的某些操作和其操作结果按时间有序的集合。每个日志文件由日志记录组成,每条日志记录描述了一次单独的系统事件。丢弃信息的日志包括的数据有但不限于丢弃信息生成的时间、发送端、接收端、发送端发送的时间、接收端接收的时间及对应的dst_id信息。

数据分析模块12,用于利用日志分析程序,提取目标日志中的目标数据,并根据目标数据分析丢弃信息丢弃的原因;其中,目标数据为丢弃信息在发送、接收过程中生成的数据。

其中,对于数据分析模块12中收集目标数据的原因为:为多次人工分析丢弃信息丢弃原因的过程中,总结出根据丢弃信息在发送、接收过程中生成的数据能够分析出丢弃信息丢弃原因。

进一步的,数据分析模块12,具体用于利用日志分析程序,通过查找指令,提取目标日志中的目标数据,并根据目标数据分析丢弃信息丢弃的原因。

其中,目标数据包括发送端向接收端发起建立连接的请求信息数据和/或接收端对发送端请求建立连接的响应信息数据和/或发送端向接收端发起断开连接的请求信息数据和/或接收端对发送端请求断开连接的响应信息数据和/或第一虚连接工作时生成的数据和/或第二虚连接工作时生成的数据。

可见,本发明实施例提供的分布式文件系统日志分析系统,通过获取分布式文件系统中丢弃信息的日志,得到目标日志;利用日志分析程序,提取目标日志中的目标数据,并根据目标数据分析丢弃信息丢弃的原因;其中,目标数据为丢弃信息在发送、接收过程中生成的数据。本发明通过对造成信息丢弃原因的分析,得到丢弃信息日志中对分析丢弃原因有用的数据,即目标数据;利用日志分析程序,重点分析目标数据,得到目标丢弃信息丢弃的原因。与人工分析丢弃信息原因相比,大幅度缩短查找目标数据的时间,从而缩短了通过日志分析分布式文件系统丢弃消息原因的时间,提高通过日志分析分布式文件系统丢弃消息原因的效率。

为了获取丢弃信息,本发明实施例中日志获取模块11之前还包括:

信息获取模块,用于通过查询指令获取分布式文件系统中的丢弃信息。

为了获取丢弃信息的详细信息,本发明实施例中日志获取模块11之前还包括:

数据获取模块,用于根据丢弃信息获取该信息的发送端和接收端。

本发明实施例还公开了一种分布式文件系统日志分析设备,分布式文件系统日志分析设备包括存储器、处理器及存储在存储器上并可在处理器上运行的分布式文件系统日志分析程序,分布式文件系统日志分析程序配置为实现上述的分布式文件系统日志分析方法的步骤。

本发明实施例还公开了一种计算机可读存储介质,计算机可读存储介质上存储有分布式文件系统日志分析程序,分布式文件系统日志分析程序被处理器执行时实现上述的分布式文件系统日志分析方法的步骤。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明所提供的分布式文件系统日志分析方法、系统、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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