一种日志文件分析方法及装置制造方法及图纸

技术编号:18525775 阅读:46 留言:0更新日期:2018-07-25 12:41
本发明专利技术实施例公开了一种日志文件分析方法及装置,方法包括:获取对待分析的日志文件预先建立的文件头指针,根据文件头指针获取待分析日志文件中正文数据的首地址以及正文数据的预设长度;根据所述正文数据的首地址,获取达到所述正文数据的预设长度的正文数据并分析。利用文件头指针中存储的正文数据的首地址快速查找到待分析的正文数据,只有定位到所要分析的正文数据的首地址,才会对获取的正文数据缓存,分析,消耗的内存少,从而可实现文件内容的快速解析。

【技术实现步骤摘要】
一种日志文件分析方法及装置
本专利技术实施例涉及通信
,具体涉及一种日志文件分析方法及装置。
技术介绍
日志文件通常是系统或者某些软件对已完成的某种处理的记录,以便将来做为参考,一些技术人员可以通过查看日志文件,检查是否有一些报错记录,然后根据其报错,找到问题的根源。ADT设备在运行的过程中,会生成很大如1T的日志文件。原有的日志文件分析方法主要有两种,第一种为采用第三方工具人工分析,即用第三方工具打开并分析日志文件,如采用该第三方工具的某个插件功能分析日志文件中的数据,该分析方法将日志文件的所有内容均存储在内存中,若日志文件一般大,打开会很消耗内存,再大一点,打开文件就失败,分析更无从谈起,即便打开成功,人工分析的工作量可想而知,且容易出错,有失准确。另一种方法为利用操作系统提供的/O函数操作文件(逐行读取数据),由于日志文件正文的长度不定,I/O函数在读取时,无法确定读取字节长度,若过长,会浪费空间,若过短,日志文件内容会读不全,造成数据分析会有偏差。I/O函数涉及到深拷贝问题、需要额外的空间存储数据,而且日志文件中有很大一部分文件是不需要分析的,所以该方法分析速度会慢、且容易出错,另外,I/O函数是阻塞函数,在对性能要求高的情况下,会影响程序的整体性能。
技术实现思路
由于现有的日志文件分析方法过于消耗内存,造成文件打不开或分析速度慢的问题,本专利技术实施例提出一种日志文件分析方法及装置。第一方面,本专利技术实施例提出一种日志文件分析方法,包括:获取对待分析的日志文件预先建立的文件头指针;根据所述文件头指针获取所述待分析日志文件中正文数据的首地址以及正文数据的预设长度;根据所述正文数据的首地址,获取达到所述正文数据的预设长度的正文数据并分析。可选地,所述正文数据的首地址以及正文数据的预设长度为一一对应关系,每个正文数据的首地址和对应正文数据的预设长度作为一个单元,至少两个单元在所述文件头指针中的布置规则为:按照在所述文件头指针中由第一个字节到最后一个字节的顺序的正文数据的首地址依次增大的方式布置所述至少两个单元;相应地,所述根据所述文件头指针获取所述待分析日志文件中正文数据的首地址以及正文数据的预设长度,包括:按照所述文件头指针中由第一个字节到最后一个字节的顺序依次获取所述待分析日志文件中正文数据的首地址以及对应正文数据的预设长度。可选地,所述获取对待分析的日志文件预先建立的文件头指针之前,所述方法还包括:将所述待分析的日志文件正文数据分割成预设数量以及预设长度的正文数据;获取每个正文数据的首地址,并将每个正文数据的首地址以及每个正文数据的预设长度存储在预先获取的文件头指针中。可选地,所述方法还包括:获取分析结果,并将分析结果存储到存储设备中。可选地,所述待分析的日志文件为ADT设备运行产生的日志文件。第二方面,本专利技术还提供一种日志文件分析装置,包括:第一获取单元,用于获取对待分析的日志文件预先建立的文件头指针;第二获取单元,用于根据所述文件头指针获取所述待分析日志文件中正文数据的首地址以及正文数据的预设长度;分析单元,用于根据所述正文数据的首地址,获取达到所述正文数据的预设长度的正文数据并分析。可选地,所述正文数据的首地址以及正文数据的预设长度为一一对应关系,每个正文数据的首地址和对应正文数据的预设长度作为一个单元,至少两个单元在所述文件头指针中的布置规则为:按照在所述文件头指针中由第一个字节到最后一个字节的顺序的正文数据的首地址依次增大的方式布置所述至少两个单元;相应地,所述第二获取单元,还用于:按照所述文件头指针中由第一个字节到最后一个字节的顺序依次获取所述待分析日志文件中正文数据的首地址以及对应正文数据的预设长度。可选地,所述装置,还包括:分割单元,用于所述获取对待分析的日志文件预先建立的文件头指针之前,将所述待分析的日志文件正文数据分割成预设数量以及预设长度的正文数据;第一存储单元,用于获取每个正文数据的首地址,并将每个正文数据的首地址以及每个正文数据的预设长度存储在预先获取的文件头指针中。可选地,所述装置还包括:第二存储单元,用于获取分析结果,并将分析结果存储到存储设备中。可选地,所述待分析的日志文件为ADT设备运行产生的日志文件。由上述技术方案可知,本专利技术实施例利用文件头指针中存储的正文数据的首地址快速查找到待分析的正文数据,只有定位到所要分析的正文数据的首地址(即找到正文数据),才会对获取的正文数据缓存,分析,从而实现文件内容的快速解析,本专利技术实施例的方法属于浅拷贝,消耗的内存极少,适到好处的节省计算机、栈、堆空间。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。图1为本专利技术一实施例提供的一种日志文件分析方法的流程示意图;图2为本专利技术另一实施例提供的一种日志文件分析方法的流程示意图;图3为本专利技术一实施例提供的一种日志文件分析装置的结构示意图。具体实施方式下面结合附图,对本专利技术的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本专利技术的保护范围。图1示出了本实施例提供的一种日志文件分析方法的流程示意图。如图1所示的一种日志文件分析方法,包括:S101、获取对待分析的日志文件预先建立的文件头指针;值得说明的是,可以预先在内存中申请一个地址作为文件头指针。S102、根据所述文件头指针获取所述待分析日志文件中正文数据的首地址以及正文数据的预设长度;值得说明的是,所述长度可为字节数。值得说明的是,本专利技术中的所述待分析的日志文件可为ADT设备运行产生的日志文件。该种日志文件一般比较大。S103、根据所述正文数据的首地址,获取达到所述正文数据的预设长度的正文数据并分析。在本专利技术实施例中,是以所述正文数据的首地址作为起始地址开始获取达到所述正文数据的预设长度的正文数据并分析。由于原始日志文件内容,是以行为单位进行记录的,经过文件映射后,行的分隔符被解析成’\n’,所以,本专利技术中获取正文数据的方法采用贪吃算法,从基地址(正文数据的首地址)开始直至在遇到字符’\n’时作为数据单位(即以行为单位)进行获取,直到获取的正文数据的长度达到当前正文数据的预设长度为止并分析。在本实施例中,获取正文数据的时候,可使用函数fread,其会返回实际获取到的字节数,便可知道获取的正文数据的长度。本专利技术实施例利用文件头指针中存储的正文数据的首地址快速查找到待分析的正文数据,只有定位到所要分析的正文数据的首地址(即找到正文数据),才会对获取的正文数据缓存,分析,消耗的内存极少,从而可实现文件内容的快速解析,本专利技术实施例的方法属于浅拷贝,适到好处的节省计算机、栈、堆空间,可以实现解析1T文件。值得说明的是,在向文件头指针中存储上述信息时,一般按照日志文件的正文顺序依次将各个正文数据的相关信息对应存储在文件头指针的第n个字节到第m个字节中,m>n,如文件头指针中第二个字节存储第一个正文数据的首地址,第三个字节存储第一个正文数据的预设长度,第四个字节存储第二个本文档来自技高网...

【技术保护点】
1.一种日志文件分析方法,其特征在于,包括:获取对待分析的日志文件预先建立的文件头指针;根据所述文件头指针获取所述待分析日志文件中正文数据的首地址以及正文数据的预设长度;根据所述正文数据的首地址,获取达到所述正文数据的预设长度的正文数据并分析。

【技术特征摘要】
1.一种日志文件分析方法,其特征在于,包括:获取对待分析的日志文件预先建立的文件头指针;根据所述文件头指针获取所述待分析日志文件中正文数据的首地址以及正文数据的预设长度;根据所述正文数据的首地址,获取达到所述正文数据的预设长度的正文数据并分析。2.根据权利要求1所述的方法,其特征在于,所述正文数据的首地址以及正文数据的预设长度为一一对应关系,每个正文数据的首地址和对应正文数据的预设长度作为一个单元,至少两个单元在所述文件头指针中的布置规则为:按照在所述文件头指针中由第一个字节到最后一个字节的顺序的正文数据的首地址依次增大的方式布置所述至少两个单元;相应地,所述根据所述文件头指针获取所述待分析日志文件中正文数据的首地址以及正文数据的预设长度,包括:按照所述文件头指针中由第一个字节到最后一个字节的顺序依次获取所述待分析日志文件中正文数据的首地址以及对应正文数据的预设长度。3.根据权利要求1所述的方法,其特征在于,所述获取对待分析的日志文件预先建立的文件头指针之前,所述方法还包括:将所述待分析的日志文件正文数据分割成预设数量以及预设长度的正文数据;获取每个正文数据的首地址,并将每个正文数据的首地址以及每个正文数据的预设长度存储在预先获取的文件头指针中。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取分析结果,并将分析结果存储到存储设备中。5.根据权利要求1-4中任一项所述的方法,其特征在于,所述待分析的日志文件为ADT设备运行产生的日志文件。6.一种日志文件分...

【专利技术属性】
技术研发人员:吴能廖军
申请(专利权)人:上海大唐移动通信设备有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1