一种文件数据采集方法、系统、电子设备和介质技术方案

技术编号:20992513 阅读:17 留言:0更新日期:2019-04-29 22:30
本申请提供了一种文件数据采集方法、系统、电子设备和介质。所述方法包括:在第N个采集周期中,获取以时间标识作为顺序排列的第一文件列表,并获取所述第一文件列表中最后一个文件的时间标识作为第一时间标识,N≥1;将第一文件列表中的文件进行采集;在第N+1个采集周期中,获取时间标识大于等于所述第一时间标识的第二文件列表;将所述第二文件列表中与所述第一文件列表文件不重复的文件进行采集。从而实现保证文件数据采集的连贯性并且不重复采集。

A Document Data Acquisition Method, System, Electronic Equipment and Media

This application provides a document data acquisition method, system, electronic equipment and medium. The method includes: in the N-th acquisition cycle, acquiring the first file list arranged in sequence by time identification, and acquiring the time identification of the last file in the first file list as the first time identification, N>1; collecting the files in the first file list; and in the N+1 acquisition cycle, acquiring time identification is greater than or equal to the first time identification. The second file list; the files in the second file list that do not duplicate the first file list file are collected. In order to ensure the consistency of file data acquisition and do not repeat the acquisition.

【技术实现步骤摘要】
一种文件数据采集方法、系统、电子设备和介质
本申请涉及一种文件数据采集方法、系统、电子设备和介质。
技术介绍
日志文件是记录在操作系统或其他软件运行中发生的事件或在通信软件的不同用户之间的消息的文件。但在系统的日常操作中,经常会产生各种各样的日志文件,如果不加以处理,会导致单个日志文件体积过于臃肿,不利于后期排查。因此需要对日志文件定期操作,比如每天将日志文件打包备份,重新编排版本号等。滚动日志文件是一种日志文件生成方式,为防止日志文件过大,当文件增长到一定程度的时候,就会切换到一个新的文件写入。在文件生成过程中,根据不同的策略,可能会对文件改名,如log4j采用的策略是.log永远是最新,然后是.log.1。这种策略下,文件会不断改名。但滚动日志在增量采集时使用文件名访问无法确认是否同一个文件。目前的采集方式一般使用文件的索引节点inode来识别同一文件,由于采集一般使用定时任务,在日志快速增长时,可能一个周期中生成了多个文件,在没有inode辅助的时候无法找到上一周期采集的文件,也就无法从上一次采集的最后的日志开始继续采集,且保证数据采集的连贯性并且不重复采集。并且文件的索引节点inode仅在linux环境下有效,对于windows环境下的文件,文件的索引节点inode无效,因此这种采集方式在windows环境下不能使用。
技术实现思路
本申请的一个方面提供了一种文件数据采集方法,所述方法包括:在第N个采集周期中,获取以时间标识作为顺序排列的第一文件列表,并获取所述第一文件列表中最后一个文件的时间标识作为第一时间标识,N≥1;将第一文件列表中的文件进行采集;在第N+1个采集周期中,获取时间标识大于等于所述第一时间标识的第二文件列表;将所述第二文件列表中与所述第一文件列表文件不重复的文件进行采集。可选地,所述获取以时间标识作为顺序排列的第一文件列表,包括:扫描日志文件中的文件目录,获取第一文件和与所述第一文件对应的时间标识;将所述第一文件、所述所述第一文件对应的时间标识根据所述时间表间标识的先后进行顺序排列,形成所述第一文件列表。可选地,所述获取时间标识大于所述第一时间标识的第二文件列表,包括:扫描日志文件中的文件目录,获取时间标识大于等于所述第一时间标识的第二文件和与所述第二文件对应的时间标识;将所述第二文件和与所述第二文件对应的时间标识根据所述时间表间标识的先后进行顺序排列,形成所述第二文件列表。可选地,在所述并获取所述第一文件列表中最后一个文件的时间标识作为第一时间标识之后,还包括:获取所述第一文件列表中最后一个文件的文件尾部位置指针。可选地,所述将所述第二文件列表中与所述第一文件列表文件不重复的文件进行采集,包括:判断所述第二文件列表中第一个文件的时间标识是否等于所述第一文件列表中最后一个文件的时间标识;若是,从所述第二文件列表中第二个文件开始进行采集。可选地,所述将所述第二文件列表中与所述第一文件列表文件不重复的文件进行采集,包括:判断所述第二文件列表中第一个文件的时间标识是否大于所述第一文件列表中最后一个文件的时间标识;若是,从所述第N个采集周期中获取的所述第一文件列表中最后一个文件的文件尾部位置指针处开始进行采集。可选地,所述时间标识为最后一次修改文件的时间。本申请另一个方面提供了一种文件数据采集系统,所述系统包括:第一文件列表获取模块,用于在第N个采集周期中,获取以时间标识作为顺序排列的第一文件列表,并获取所述第一文件列表中最后一个文件的时间标识作为第一时间标识,N≥1,将第一文件列表中的文件进行采集;第二文件列表获取模块,用于在第N+1个采集周期中,获取时间标识大于等于所述第一时间标识的第二文件列表;采集模块,用于将所述第二文件列表中与所述第一文件列表文件不重复的文件进行采集。本申请又一方面提供了一种电子设备,所述设备包括:处理器;存储器,其存储有计算机可执行程序,该程序在被所述处理器执行时,使得所述处理器执行如上文所述的文件数据采集方法。本申请再一方面提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上文所述的文件数据采集方法。附图说明为了更完整地理解本申请及其优势,现在将参考结合附图的以下描述,其中:图1示意性示出了本申请实施例提供的文件数据采集的方法流程图;图2示意性示出了本申请实施例提供的文件数据采集方法中获取以时间标识作为顺序排列的第一文件列表的步骤的方法流程图;图3示意性示出了本申请实施例提供的文件数据采集方法中方法中获取时间标识大于等于所述第一时间标识的第二文件列表的步骤的方法流程图;图4示意性示出了本申请实施例提供的文件数据采集方法中方法中的步骤S103的方法流程图;图5示意性示出了本申请实施例提供的文件数据采集系统框图;图6示意性示出了根据本申请实施例提供的电子设备框图。具体实施方式以下,将参照附图来描述本申请的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本申请的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本申请实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本申请的概念。在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本申请。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。本申请的一个实施例提供了一种文件数据采集方法,参见图1,所述方法包括步骤S101~步骤S102的内容:本申请实施例以增量采集是文件数据为例进行说明,增量采集是指除了需要第一次采集所有的数据内容,后续再采集的时候只需要采集新增的数据内容。步骤S101,在第N个采集周期中,获取以时间标识作为顺序排列的第一文件列表,并获取所述第一文件列表中最后一个文件的时间标识作为第一时间标识,N≥1,将第一文件列表中的文件进行采集。其中,所述时间标识为最后一次修改文件的时间。对于日志文件而言,或者滚动日志文件而言,文件的最后一次修改时间只取决于最后日志写入的时间,修改文件名不会改变最后一次修改文件的时间,基于日志文件顺序创建,每次只写入一个文件的特性,因此不存在两个文件有相同的最后修改时间。在一个可行的方式中,参见图2,获取以时间标识作为顺序排列的第一文件列表的步骤可以通过下列步骤步骤S101a~步骤S101b进行实现:步骤S101a,扫描日志文件中的文件目录,获取第一文件和与所述第一文件对应的时间标识。此处的第一文件为多个日志文件,将第一文件以及与这些第一文件对应的最后一次修改该第一文件的时间进行获取,形成一个列表,列表中包含的信息为第一文件,以及最后一次修改该第一文件的时间。步骤S101b将所述第一文件、所述所述第一文件对应的时间标识根据所述时间表间标识的先后进行顺序排列,形成所述第一文件列表。将步骤S101a中形成的列表通过最后一次修改该第一文件的时间进行排序,将时间最早的第一文件作为第一文件列表中的第一个文件,将时间最晚的第一文件作为第一文件列表中的最后一个文件,形成第一文件列表。另外,需要说明的是,在该第N个采集周期中,此处可以理解本文档来自技高网...

【技术保护点】
1.一种文件数据采集方法,其特征在于,所述方法包括:在第N个采集周期中,获取以时间标识作为顺序排列的第一文件列表,并获取所述第一文件列表中最后一个文件的时间标识作为第一时间标识,N≥1;将第一文件列表中的文件进行采集;在第N+1个采集周期中,获取时间标识大于等于所述第一时间标识的第二文件列表;将所述第二文件列表中与所述第一文件列表文件不重复的文件进行采集。

【技术特征摘要】
1.一种文件数据采集方法,其特征在于,所述方法包括:在第N个采集周期中,获取以时间标识作为顺序排列的第一文件列表,并获取所述第一文件列表中最后一个文件的时间标识作为第一时间标识,N≥1;将第一文件列表中的文件进行采集;在第N+1个采集周期中,获取时间标识大于等于所述第一时间标识的第二文件列表;将所述第二文件列表中与所述第一文件列表文件不重复的文件进行采集。2.根据权利要求1中所述的方法,其特征在于,所述获取以时间标识作为顺序排列的第一文件列表,包括:扫描日志文件中的文件目录,获取第一文件和与所述第一文件对应的时间标识;将所述第一文件、所述所述第一文件对应的时间标识根据所述时间表间标识的先后进行顺序排列,形成所述第一文件列表。3.根据权利要求1中所述的方法,其特征在于,所述获取时间标识大于等于所述第一时间标识的第二文件列表,包括:扫描日志文件中的文件目录,获取时间标识大于等于所述第一时间标识的第二文件和与所述第二文件对应的时间标识;将所述第二文件和与所述第二文件对应的时间标识根据所述时间表间标识的先后进行顺序排列,形成所述第二文件列表。4.根据权利要求1中所述的方法,其特征在于,在所述并获取所述第一文件列表中最后一个文件的时间标识作为第一时间标识之后,还包括:获取所述第一文件列表中最后一个文件的文件尾部位置指针。5.根据权利要求1中所述的方法,其特征在于,所述将所述第二文件列表中与所述第一文件列表文件不重复的文件进行采集,包括:判断所述第二...

【专利技术属性】
技术研发人员:叶盛李凯
申请(专利权)人:北京奇安信科技有限公司
类型:发明
国别省市:北京,11

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

1