日志结构化信息提取方法及装置的制造方法

文档序号:9687560阅读:578来源:国知局
日志结构化信息提取方法及装置的制造方法
【技术领域】
[0001 ]本发明设及计算机领域,特别是设及日志结构化信息提取方法及装置。
【背景技术】
[0002] 日志数据是大数据的重要组成部分。日志数据的分析在网站用户行为分析、系统 运维统计等方面都是必不可少的。把日志的结构化信息提取出来,再基于提取后的结构化 数据进行分析的方法被普遍接受。
[0003] 目前日志结构化信息的提取方法不够灵活,基本都是针对某种具体的日志需要进 行编码提取结构化信息。不同的日志格式需要进行不同的编码工作,对于同一日志,由日志 格式或业务变化引起的变更也需要修改相应的代码,无法自适应其变化。

【发明内容】

[0004] 本发明实施例的目的是提供日志结构化信息提取方法及装置,W实现自适应自动 提取日志结构化数据的目的。
[000引为实现上述目的,本发明提供了如下方案:
[0006] -种日志结构化信息提取方法,包括:
[0007] 获取日志文件和与之相应的日志DDL文件,所述日志孤L文件中包含所述日志文件 中结构化信息的字段解析规则和字段定义;
[0008] 根据所述字段解析规则从所述日志文件中提取出字段并存储至输出文件;
[0009 ]生成与所述输出文件对应的字段类型说明文件。
[0010] -种日志结构化信息提取装置,包括:
[00川获取单元,获取日志文件和与之相应的日志DDL文件,所述日志DDL文件中包含所 述日志文件中结构化信息的字段解析规则和字段定义;
[0012] 任务单元,用于根据所述字段解析规则从所述日志文件中提取出字段并存储至输 出文件;
[0013] 第一生成单元,用于生成与所述输出文件对应的字段类型说明文件。
[0014] 在本发明实施例中,上游系统可向下游系统提供日志DDL文件,运样下游系统可根 据日志DDL文件自动提取日志的结构化数据,后续可加载到目标数据库供后续分析。在此过 程中,下游系统无需理解晦涩难懂的日志。同时,在日志格式变化或业务逻辑变化后,上游 系统只需要提供新的日志DDL文件,下游系统就可W依据新的日志DDL文件对日志进行解 析。因此,本发明实施例所提供技术方案能够自适应由日志格式变化或业务逻辑变化引起 的字段解析规则变化,如分隔符变化、字段增减、字段位置变化等。只要结构化数据的数据 接口不变,就不会对下游系统有影响,下游系统也就不需要做任何修改。此方案,对于分隔 符变化和字段位置变化的情况,完全可W保持结构化数据的数据接口不变,也就是说运些 变化对下游系统而言是透明的。对于字段增减的情况,其实数据接口已经发生改变,但是此 方案仍然能够自适应地提取结构化数据,如果下游系统没有使用到受影响的字段,也不需 要做任何修改。
【附图说明】
[0015] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所 需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施 例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可W根据运些附图 获得其他的附图。
[0016] 图1-4为本发明实施例提供的日志结构化信息提取方法示例性流程图;
[0017] 图5、6为本发明实施例提供日志结构化信息提取装置结构示意图。
【具体实施方式】
[0018] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0019] 为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实 施方式对本发明作进一步详细的说明。
[0020] 关系数据库存储的数据是结构化的数据,导出成文本就是固定分割符分割的数 据。与之对应的是半结构化数据,比如xml, json,html格式等;非结构化数据指的是图片,音 频和视频文件等。
[0021] 与传统的结构化数据(如数据库表)相比,日志由于其灵活多变的格式,不管对人 的理解还是对计算机的处理都不是很友好。
[0022] 目前日志结构化信息的提取方法不够灵活,基本都是针对某种具体的日志需要进 行编码提取结构化信息。
[0023] 例如,基于固定分隔符提取日志的提取方法,运种提取方式适合日志格式比较固 定的日志,如W单分割符' Γ或多分隔符' 分割的日志。
[0024] 但是,基于固定分隔符提取日志的提取方法只适用于格式固定的日志,无法处理 其他格式的日志。
[002引还有基于正则表达式的提取方式。正规表达式又称正规表示法、常规表示法 (Regular Expression,在代码中常简写为regex、regexp或RE)。正则表达式使用单个字符 串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常 被用来检索、替换那些符合某个模式的文本。许多程序设计语言都支持利用正则表达式进 行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎(引用自百度百 科:http : //baike .baidu. com/1 ink?u;rl = BCPBnr3ePyeoGzyQBS耻DNSxCn化fpCNSQEII HTB31YN7IMCxkLLvlZ曲4vNVda0i jM5icMh46nNzMgqJB19q)。基于正则表达式的日志提取方 法能够处理各种格式的日志,也是目前业界普遍的一种做法。
[0026]但是在程序中硬编码正则表达式的方法不够灵活,只能处理单一格式的日志,而 且无法自适应由业务需求或日志格式变化引起的变更。同时,提取的数据没有与其直接关 联的元数据信息,无法自动导入目标数据库进行分析。另一方面,对于固定分隔符分割的日 志,正则表达式提取方法效率较差。
[0027] 传统的日志提取方法需要日志使用方开发人员先理解日志的内容,然后根据应用 的需求提取需要的信息。运种方法存在若干弊端:
[0028] -方面,在很多机构中,特别是一些大型企业,日志的所有方和日志的使用方往往 不在同一个团队,甚至不在同一部口。另一方面,日志格式灵活多变,有的日志极其复杂,对 日志使用方而言如同天书,很难理解,而且目前没有一种规范来准确地描述日志的格式和 业务含义。由于W上原因,为了提取日志的结构化信息,使用方往往要花费大量的时间和精 力在沟通和理解所需的各种日志的格式。
[0029] 为了支持业务的发展,IT系统往往要做相应的变更。由此导致的日志格式变更很 容易导致下游依赖相应日志的应用不能正确地解析变更后的日志,从而影响相应的业务系 统。即使从管理角度可W解决变更问题,但是成本却很高。可能一个很小的日志格式变更, 就要修改下游的若干系统,每个系统都需要测试和上线。
[0030] 为实现自适应自动提取日志结构化数据,本发明提出了日志结构化信息提取方法 及日志结构化信息提取装置。
[0031] 日志结构化信息提取装置可为日志处理引擎。
[0032] 图1-图3示出了日志处理引擎所执行的日志结构化信息提取方法的示例性流程 图,其至少可包括如下步骤:
[0033] S1:获取日志文件和与之相应的日志孤L文件。
[0034] 更具体的是,是从日志所有方(上游系统)获取上述日志文件和日志DDUData Definition L曰ngu曰ge)文件。
[0035] 该日志孤L文件是用来描述日志格式的XML文件,内容包含了日志文件中结构化信 息的字段解析规则和字段定义。
[0036] 日志孤L文件需要和日志同时提供给日志处理引擎。
[0037] S2:根据日志DDL文件中的字段解析规则,从上述日志文件中提取出字段并存储至 输出文件。
[0038] 提取出的字段可称为解析结果字段或结构化数据。
[0039] S3、生成与上述输出文件对应的字段类型说明文件。
[0040] 字段类型说明文件的内容主要包含字段字义。字段类型说明文件可称为结构化数 据 DDL。
[0041 ] 在本发明其他实施例中,上述方法还可包括如下步骤:
[0042] S4、根据上述字段类型说明文件生成建表脚本并提交给目标数据库。
[0043] 目标数据库的RDBMS(关系数据库管理系统,Relational Database Management System),可将数据组织为相关的行和列。
[0044] 上述建表脚本可用于目标数据库(RDBMS)创建空白数据库表,并加载(加载工具自 动加载)输出文件中的字段至上述空白数据库表。
[004引可见,在本发明实施例中,日志所有方(上游系统)可向日志使用方提供日志孤L文 件,运样日志使用方(下游系统)可根据日志D
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1