CN109101644A - 一种动静态日志文件扫描采集方法 - Google Patents
一种动静态日志文件扫描采集方法 Download PDFInfo
- Publication number
- CN109101644A CN109101644A CN201810952495.6A CN201810952495A CN109101644A CN 109101644 A CN109101644 A CN 109101644A CN 201810952495 A CN201810952495 A CN 201810952495A CN 109101644 A CN109101644 A CN 109101644A
- Authority
- CN
- China
- Prior art keywords
- file
- document
- metadata information
- metadata
- sound state
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种动静态日志文件扫描采集方法,包括如下步骤:a)定时扫描文件列表,获取共同元数据信息;b)判断当前操作系统类型,记录文件列表中的特定元数据信息一起形成文件元数据信息;c)生成文件摘要,并保存到日志采集系统作为该文件的校验元数据;d)日志采集系统采集文件前,根据生成的摘要和文件元数据信息,跟日志采集系统中已存在的文件校验元数据对照;如果一致,则认为当前采集的文件内容是之前已采集文件内容的后续追加;如果不一致,则认为是新文件的内容。本发明针对日志文件多种动静态生成方式,使用同一种配置采集日志文件,而不用针对每一种情况做特定的配置,更为高效,实用性强,易于推广。
Description
技术领域
本发明涉及一种日志文件扫描采集方法,尤其涉及一种动静态日志文件扫描采集方法,属于互联网技术领域。
背景技术
日志文件是用于记录系统操作事件的记录文件,具有处理历史数据、诊断问题的追踪以及理解系统的活动等重要作用,日志文件可以按文件大小滚动生、按时间滚动生和静态多文件生等多种静动态日志文件生成方式,目前采集系统针对不同的日志文件生成方式需配置不同的采集方式,并且当日志文件发生临时重命名时,将会出现采集失败,导致日志丢失的情况。
发明内容
本发明所要解决的技术问题是提供一种动静态日志文件扫描采集方法,针对日志文件多种动静态生成方式,使用同一种配置采集日志文件,而不用针对每一种情况做特定的配置,因此更为高效,实用性强,易于推广。
本发明为解决上述技术问题而采用的技术方案是提供一种动静态日志文件扫描采集方法,其中,包括如下步骤:a)定时扫描记录目标路径下的文件列表,获取文件列表中的共同元数据信息;b)判断当前操作系统类型,根据不同操作系统记录文件列表中的特定元数据信息;并将获得的共同元数据信息和特定元数据信息组合在一起形成文件元数据信息;c)操作系统根据文件元数据信息生成文件摘要,并将文件摘要保存到日志采集系统作为该文件的校验元数据;d)日志采集系统采集文件前,根据生成的摘要和文件元数据信息,跟日志采集系统中已存在的文件校验元数据对照;如果一致,则认为当前采集的文件内容是之前已采集文件内容的后续追加;如果不一致,则认为是新文件的内容。
进一步地,所述步骤a)中扫描获取的共同元数据信息包括扫描记录文件的文件名、文件大小、是否可读、是否可写、绝对路径、是否为隐藏文件和最后创建修改时间。
进一步地,所述步骤b)中的操作系统为Windows系统,所述Windows系统记录文件创建时间、文件在卷中唯一索引和部分文件内容作为参数生成文件摘要,所述文件摘要和文件元数据信息一起保存到日志采集系统作为该文件的校验元数据。
进一步地,所述Windows系统调用GetFileAttributes接口,获取Windows文件的更新时间和文件大小属性,使用GetFileInformationByHandle获取卷内唯一标识,并与更新时间、文件大小属性一起,采用MD5或SHA算法生成长度固定的文件摘要。
进一步地,所述步骤b)中的操作系统为Linux系统,所述Linux系统记录inode信息作为全文件系统唯一标识,并与更新时间、文件大小属性一起,采用MD5或SHA算法生成长度固定的文件摘要,并保存到日志采集系统作为该文件的校验元数据。
本发明对比现有技术有如下的有益效果:本发明提供的动静态日志文件扫描采集方法,针对日志文件多种动静态生成方式,使用同一种配置采集日志文件,而不用针对每一种情况做特定的配置,而且支持日志文件动态变更文件名的情况下,被采集系统采集其内容,因此更为高效,实用性强,易于推广。
附图说明
图1为本发明动静态日志文件扫描与采集方法过程示意图。
具体实施方式
下面结合附图对本发明作进一步的描述。
图1为本发明动静态日志文件扫描与采集方法过程示意图。
请参见图1,本发明提供的动静态日志文件扫描采集方法,包括如下步骤:
a)定时扫描记录目标路径下的文件列表,获取文件列表中的共同元数据信息;
b)判断当前操作系统类型,根据不同操作系统记录文件列表中的特定元数据信息;并将获得的共同元数据信息和特定元数据信息组合在一起形成文件元数据信息;
c)操作系统根据文件元数据信息生成文件摘要,并将文件摘要保存到日志采集系统作为该文件的校验元数据;
d)日志采集系统采集文件前,根据生成的摘要和文件元数据信息,跟日志采集系统中已存在的文件校验元数据对照;如果一致,则认为当前采集的文件内容是之前已采集文件内容的后续追加;如果不一致,则认为是新文件的内容。
本发明提供的动静态日志文件扫描采集方法,所述步骤a)扫描记录文件的文件名、文件大小、是否可读、是否可写、绝对路径、是否为隐藏文件、最后创建时间和inode信息等文件基本信息,作为文件元数据保存到采集系统。
本发明提供的动静态日志文件扫描采集方法,所述步骤b)操作系统为windows系统,所述windows操作系统的FAT(File Allocation Table)文件系统的基本结构包括文件分配表和目录项两个部分。文件分配表用来描述文件系统内的簇的状态以及文件内容的前后连续关系,目录项用来匹配文件系统内的每个文件和文件夹,目录项中记录了该文件或文件夹的文件名、大小、创建时间、文件内容起始地址和其他一些元数据,采集系统调用GetFileAttributes接口,获取windows文件的存储属性,扫描记录目录项中的信息,获取文件创建时间、文件在卷中的唯一索引和部分文件内容作为参数生成文件摘要,可根据实际情况选取不同的文件元数据和内容生成文件摘要,所述文件摘要和文件元数据一起保存到采集系统作为该文件的校验元数据。若所述步骤b)操作系统为Linux系统,所述Linux文件系统结构由目录项、inode和数据块组成。目录项包括文件名和inode节点号,inode是文件基本信息的存放地和数据块指针存放地,数据块是文件的具体内容的存放地,所述inode包含文件的属性,如读写属性、owner等,linux系统一个文件对应一个inode,且文件修改值影响inode存储的值但不影响inode本身,所以采集系统扫描记录Linux系统的inode信息生成文件摘要,保存到采集系统作为该文件的校验元数据。
本发明提供的动静态日志文件扫描采集方法,所述采集系统采集文件前,根据采集文件生成的文件摘要和文件元数据,跟采集系统已存在的文件校验元数据对比。如果不一样,则认为是新文件的内容,采集系统从文件开始处采集,如果一样则需要分析前后文件大小的变化,若采集文件变大,则从上次采集结束处继续采集。
下面结合Linux和Windows的文件结构给出一个具体实施例。
Linux文件存储结构:Linux正统的文件系统(如ext2、ext3)一个文件由目录项(包括文件名和inode节点号)、inode(又称文件索引节点,是文件基本信息的存放地和数据块指针存放地)和数据块(文件的具体内容存放地)组成。
Linux正统的文件系统(如ext2、3等)将硬盘分区时会划分出目录块、inodeTable区块和data block数据区域。一个文件由一个目录项、一个inode和一个或者多个数据区域块组成。Inode包含文件的属性(如读写属性、owner等,以及指向数据块的指针),数据区域块则是文件内容。inode里所包含的文件信息可以通过statfilename查看得到。当查看某个文件时,会先从inode table中查出文件属性及数据存放点,再从数据块中读取数据(这种文件系统产生的磁盘碎片很少,这也就是Linux不需要进行磁盘碎片整理的原因)。
Windows文件系统存储结构:windows系列操作系统支持FAT、NTFS和HPFS文件系统。以FAT(File Allocation Table)文件系统为例,其数据结构类型比较少,其中两种最重要的结构是:文件分配表和目录项。
文件分配表FAT:描述文件系统内的“簇”的状态以及文件内容的前后连续关系(假若一个文件需要占用一个以上的簇,那么FAT表描述如何找到另外的“簇”);FAT用于指明文件内容所占用的簇的前后连续关系(找到所占用的其他簇),并且说明了簇的分配状态。FAT12/16/32三个阶段的FAT文件系统的主要区别在于FAT项的大小不同。
目录项:FAT文件系统内的每个文件和文件夹都被分配一个目录项,这个目录项中记录了该文件或文件夹的,文件名、大小、创建时间、文件内容起始地址以及其他一些“元数据”,说明对应的文件的“起始簇号”。
FAT文件系统存储文件时,如果一个簇存放不下,会为文件分配多个簇,前一个簇里面装着下一个簇的号码。FAT文件系统通过这样的一种链表的形式存储大文件。FAT文件系统在读文件时只会从文件开始的那个簇开始读,读完这个之后才会读取下一个簇的数据。
采用本发明提供的动静态日志文件扫描采集方法,具体步骤如下:
步骤S1:在实验环境分别准备windows和Linux采集系统的两台服务器并在上面安装ivoty产品数据采集程序;
步骤S2:按配置要求配置好采集程序采集的目录,并启动;
步骤S3:采集程序启动后,定时扫描目标目录下的文件信息。主要收集过程如下:1)收集操作系统层面之上的文件信息(文件名、是否可读、是否可写、绝对路径、是否目录,是否为隐藏文件,最后创建时间等文件基本信息)。2)程序判断运行那种操作系统之上。如果是windows系统,则调用操作系统的GetFileAttributes接口,获取文件windows文件存储属性(主要是文件索引,windwos系统中如果文件的修改移动没有跨盘符,那么文件索引值是不变的)。如果是linux系统,则获取linux文件系统的inode信息(linux系统一个文件对应一个inode,且文件修改值影响inode存储的值不影响inode本身)。上述两步操作获取的文件属性信息,将在文件扫描过程作为文件元信息一起记录到采集系统。
步骤S4:获取到文件元信息后,根据实际情况配置文件校验属性生成规则,执行规则生成校验字段。校验规则生成算法根据windows和Linux两种操作系统有些微不同(linux的inode元数据可全文件系统唯一标识文件,windows使用GetFileInformationByHandle可在卷内唯一标识文件,这两个唯一标识与更新时间、文件大小等属性一起,用MD5、SHA或其他的摘要生成算法生成固定长度的摘要。如果文件有变更,则生成的摘要不一样)。该算法作用是将文件元信息中文件名元数据项改动后,系统还能识别出具体的数据;从而提供了一种可不依靠文件名判断的方法。
步骤S5:采集系统的文件识别日志文件。Ivory产品采集系统扫描文件,除了常规的文件识别方式,还增加了这次发明的识别方式,具体处理过程可以采用Java编程语言实现。因此无论哪种日志产生方式,只要日志文件滚动是通过文件名标识的,ivory采集系统都识别出。
步骤S6:完成识别后,如果是新文件则按新文件方式处理。如果是修改了文件名的旧文件,则按原来旧文件的采集方式处理。
综上所述,本发明解决了在日志文件的生命周期中唯一标识文件。本发明将各种元数据与单个文件相关联,如果追加文件内容,重命名,则能够自动检测和更新文件关联;从而覆盖了静态日志文件、按文件大小滚动日志输出和按时间滚动日志输出三种常用的日志文件生成方式,简化了日志采集的繁杂配置,且不影响程序整体性能,易于一直维护,扩展性强。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。
Claims (5)
1.一种动静态日志文件扫描采集方法,其特征在于,包括如下步骤:
a)定时扫描记录目标路径下的文件列表,获取文件列表中的共同元数据信息;
b)判断当前操作系统类型,根据不同操作系统记录文件列表中的特定元数据信息;并将获得的共同元数据信息和特定元数据信息组合在一起形成文件元数据信息;
c)操作系统根据文件元数据信息生成文件摘要,并将文件摘要保存到日志采集系统作为该文件的校验元数据;
d)日志采集系统采集文件前,根据生成的摘要和文件元数据信息,跟日志采集系统中已存在的文件校验元数据对照;如果一致,则认为当前采集的文件内容是之前已采集文件内容的后续追加;如果不一致,则认为是新文件的内容。
2.如权利要求1所述的动静态日志文件扫描采集方法,其特征在于,所述步骤a)中扫描获取的共同元数据信息包括扫描记录文件的文件名、文件大小、是否可读、是否可写、绝对路径、是否为隐藏文件和最后创建修改时间。
3.如权利要求1所述的动静态日志文件扫描采集方法,其特征在于,所述步骤b)中操作系统为Windows系统,所述Windows系统记录文件创建时间、文件在卷中唯一索引和部分文件内容作为参数生成文件摘要,所述文件摘要和文件元数据信息一起保存到日志采集系统作为该文件的校验元数据。
4.如权利要求3所述的动静态日志文件扫描采集方法,其特征在于,所述Windows系统调用GetFileAttributes接口,获取Windows文件的更新时间和文件大小属性,使用GetFileInformationByHandle获取卷内唯一标识,并与更新时间、文件大小属性一起,采用MD5或SHA算法生成长度固定的文件摘要。
5.如权利要求1所述的动静态日志文件扫描采集方法,其特征在于,所述步骤b)中操作系统为Linux系统,所述Linux系统记录inode信息作为全文件系统唯一标识,并与更新时间、文件大小属性一起,采用MD5或SHA算法生成长度固定的文件摘要。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810952495.6A CN109101644A (zh) | 2018-08-21 | 2018-08-21 | 一种动静态日志文件扫描采集方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810952495.6A CN109101644A (zh) | 2018-08-21 | 2018-08-21 | 一种动静态日志文件扫描采集方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109101644A true CN109101644A (zh) | 2018-12-28 |
Family
ID=64850461
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810952495.6A Pending CN109101644A (zh) | 2018-08-21 | 2018-08-21 | 一种动静态日志文件扫描采集方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109101644A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110046134A (zh) * | 2019-04-09 | 2019-07-23 | 北京信安世纪科技股份有限公司 | 数据库日志记录方法及系统和数据库日志记录检测方法 |
CN112001161A (zh) * | 2020-08-25 | 2020-11-27 | 上海新炬网络信息技术股份有限公司 | 一种文本查重方法 |
CN112564959A (zh) * | 2020-12-01 | 2021-03-26 | 上海恒生聚源数据服务有限公司 | 一种日志采集方法、装置、设备及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101610174A (zh) * | 2009-07-24 | 2009-12-23 | 深圳市永达电子股份有限公司 | 一种日志关联分析系统与方法 |
CN102609515A (zh) * | 2012-02-07 | 2012-07-25 | 奇智软件(北京)有限公司 | 一种文件快速扫描方法和系统 |
CN107171825A (zh) * | 2017-04-11 | 2017-09-15 | 捷开通讯(深圳)有限公司 | 一种终端的重复日志过滤方法 |
-
2018
- 2018-08-21 CN CN201810952495.6A patent/CN109101644A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101610174A (zh) * | 2009-07-24 | 2009-12-23 | 深圳市永达电子股份有限公司 | 一种日志关联分析系统与方法 |
CN102609515A (zh) * | 2012-02-07 | 2012-07-25 | 奇智软件(北京)有限公司 | 一种文件快速扫描方法和系统 |
CN107171825A (zh) * | 2017-04-11 | 2017-09-15 | 捷开通讯(深圳)有限公司 | 一种终端的重复日志过滤方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110046134A (zh) * | 2019-04-09 | 2019-07-23 | 北京信安世纪科技股份有限公司 | 数据库日志记录方法及系统和数据库日志记录检测方法 |
CN110046134B (zh) * | 2019-04-09 | 2021-08-31 | 北京信安世纪科技股份有限公司 | 数据库日志记录方法及系统和数据库日志记录检测方法 |
CN112001161A (zh) * | 2020-08-25 | 2020-11-27 | 上海新炬网络信息技术股份有限公司 | 一种文本查重方法 |
CN112001161B (zh) * | 2020-08-25 | 2024-01-19 | 上海新炬网络信息技术股份有限公司 | 一种文本查重方法 |
CN112564959A (zh) * | 2020-12-01 | 2021-03-26 | 上海恒生聚源数据服务有限公司 | 一种日志采集方法、装置、设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101403305B1 (ko) | 백업부트레코드 정보를 이용한 파티션 복구 장치 및 방법 | |
CN107040578B (zh) | 数据同步方法、装置和系统 | |
CN107391744B (zh) | 数据存储、读取方法、装置及其设备 | |
CN109739815B (zh) | 文件处理方法、系统、装置、设备及存储介质 | |
CN106874481B (zh) | 一种分布式文件系统元数据信息读取方法及系统 | |
US8606751B1 (en) | System and method for backup by inode number | |
CN108021590B (zh) | 一种目标对象属性确定方法、属性更新方法及装置 | |
WO2018095299A1 (zh) | 一种时序数据管理方法、设备和装置 | |
CN109101644A (zh) | 一种动静态日志文件扫描采集方法 | |
CN109710455B (zh) | 基于fat32文件系统的删除文件恢复方法及系统 | |
CN109271545B (zh) | 一种特征检索方法及装置、存储介质和计算机设备 | |
CN106599292B (zh) | 针对实时视频数据和图像数据进行存储的方法及系统 | |
CN102289526B (zh) | 一种hfs+文件系统数据恢复方法及装置 | |
CN107391769B (zh) | 一种索引查询方法及装置 | |
CN112487083A (zh) | 一种数据校验方法和设备 | |
JP4233564B2 (ja) | データ処理装置、データ処理用のプログラムおよび記録媒体 | |
JP5687656B2 (ja) | データ変換装置 | |
US8316008B1 (en) | Fast file attribute search | |
CN110297781B (zh) | 一种基于写时复制来恢复apfs中被删除数据的方法 | |
CN109947730A (zh) | 元数据恢复方法、装置、分布式文件系统及可读存储介质 | |
CN106980514B (zh) | 配置数据的更新方法和装置 | |
CN105260266A (zh) | 一种快照卷写方法及依赖快照系统 | |
CN110019192B (zh) | 数据库的检索方法及装置 | |
CN106874457B (zh) | 一种通过虚拟目录来提升元数据集群性能的方法 | |
CN117215477A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20181228 |
|
WD01 | Invention patent application deemed withdrawn after publication |