CN109582551B - 日志数据解析方法、装置、计算机设备和存储介质 - Google Patents
日志数据解析方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN109582551B CN109582551B CN201811182968.5A CN201811182968A CN109582551B CN 109582551 B CN109582551 B CN 109582551B CN 201811182968 A CN201811182968 A CN 201811182968A CN 109582551 B CN109582551 B CN 109582551B
- Authority
- CN
- China
- Prior art keywords
- log
- extractor
- information
- field
- log files
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及数据处理技术领域,尤其涉及一种日志数据解析方法、装置、计算机设备和存储介质。该方法包括:采集多个日志文件,调用预设的日志匹配表,获取提取器名称后,调用提取器名称对应的字段提取器,通过字段提取器对日志文件中的字段进行解析,得到多个有效字段信息;将有效字段信息通过字段转换器的转换,得到对应的数据信息,将数据信息添加到日志文件中后,进行存储。本发明采集各个子***中的日志文件,通过调用日志配置表的方式,采用不同的提取器提取日志文件中的信息,得到有效字段信息,通过对解析的有效字段信息再转换的进一步处理,丰富了原始日志文件中的数据,为日志文件的后续分析,提供有价值的日志数据。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种日志数据解析方法、装置、计算机设备和存储介质。
背景技术
现在操作***内核、网络移动设备、应用服务器等都会产生大量的各种格式类型的日志数据,对于json和固定分隔符的日志类型可以很容易的进行结构化处理,但是目前的日志处理平台只能对整条日志进行正则解析,无法对解析出的多个字段再进行进一步的处理转换。
如果日志事件的发生依赖于外部的数据源信息,这样的日志事件在分析原因的时候会显得有些捉襟见肘。如果想要通过子***的条目来分类日志,由于原始日志中一般只包含可区分的登录服务器的用户名虽然用户名可以映射到不同的子***,但只存储原始日志的话会难以实现对子***根据日志进行进一步分析。
发明内容
有鉴于此,有必要针对现有日志处理平台无法对解析出的字段进行进一步处理的问题,提供一种日志数据解析方法、装置、计算机设备和存储介质。
一种日志数据解析方法,包括:
采集多个外部子***产生的多个日志文件;
调用预设的日志匹配表,所述日志匹配表中含有所述子***的名称及对应的提取器名称,根据所述子***的名称,查找所述日志匹配表,获取所述提取器名称后,调用所述提取器名称对应的字段提取器,通过所述字段提取器对所述日志文件中的字段进行解析,得到多个有效字段信息;
将所述有效字段信息通过预设的字段转换器的转换,得到对应的数据信息,将数据信息添加到所述日志文件中后,进行存储。
在其中一个实施例中,所述采集外部子***产生的日志文件,包括:
定时接收预设在所述子***中的数据收集Logstash工具发送的所述日志文件,所述Logstash工具用于采集所述子***中产生的日志文件,所述Logstash工具收集多个所述日志文件,以多线程的方式分别对所述日志文件转换成目标格式的日志文件。
在其中一个实施例中,所述采集外部子***产生的日志文件,包括:
通过所述子***中预设的文件搜索filebeat采集器,远程监视所述子***中的多个日志文件,所述filebeat采集器通过多个探测器检测所述子***中预设位置的日志目录并查找日志文件,将查找到的日志文件通过收割进程读取每个日志文件中的新内容,将新内容通过处理程序集合成日志文件;
接收所述filebeat采集器发送的日志文件。
在其中一个实施例中,所述调用预设的日志匹配表,所述日志匹配表中含有所述子***的名称及对应的提取器名称,根据所述子***的名称,查找所述日志匹配表,获取所述提取器名称后,调用所述提取器名称对应的字段提取器,通过所述字段提取器对所述日志文件中的字段进行解析,包括:
对多个所述日志文件进行分组,形成日志文件组,同一个所述子***采集的多个日志文件分在同一组所述日志文件组中;
根据采集时间对所述日志文件组进行排序;
在每组所述日志文件组中对多个所述日志件的字段进行解析前,均调用所述日志匹配表,获取所述提取器名称后,通过所述字段提取器对同一组所述日志文件组中的多个所述日志文件的字段依次进行解析。
在其中一个实施例中,所述字段提取器包括Json提取器,所述Json提取器提取Json类型的日志文件,所述Json提取器预设有key分隔符、kv分隔符,通过所述Json提取器对所述日志文件中的字段进行解析,得到多个有效字段信息。
在其中一个实施例中,所述字段提取器包括gork提取器,所述gork提取器通过正则表达式提取非结构化类型的日志文件,所述gork提取器预设有多个gork正则表达式,通过所述gork正则表达式对所述日志文件中的字段进行解析,得到多个有效字段信息。
在其中一个实施例中,所述将所述有效字段信息通过预设的字段转换器的转换,得到对应的数据信息,包括:
所述字段转化器包括所述有效字段信息对应的多个字段转换规则,所述字段转换规则包括数值转换规则、大写转换规则、IP位置转换规则中的至少一项;
将所述有效字段信息通过所述字段转换器依次进行转换,将字符串类型的所述有效字段信息,通过所述数值转换规则的转换,得到数值信息;
将小写的字符串类型所述有效字段信息,通过所述大写转换规则的转换,得到大写的字符串信息;
将IP地址的所述有效字段信息,通过所述IP位置转换规则的转换,得到对应的国家、省市、经纬度、时区中的至少一项地址位置信息。
在其中一个实施例中,所述将所述有效字段信息通过预设的字段转换器的转换,得到对应的数据信息前,还包括:
通过预设的配置界面中的输入字段获取配置信息,所述配置信息包括有效字段信息、查找表ID信息、需添加字段信息,将获取的所述配置信息存储在IP位置转换表中;
通过所述配置界面中的上传接口获取外部数据源并存储,将所述外部数据源的存储路径存储在所述IP位置转换表的查找表存储路径信息中,且所述存储路径与所述有效字段信息对应,致使建立所述IP位置转换规则;
将所述有效字段信息通过所述IP位置转换规则的转换时,将所述有效字段信息与所述IP位置转换表进行匹配,当所述IP位置转换表中含有所述有效字段信息时,通过所述查找表ID信息和查找表存储路径信息查找到对应的外部数据源,获取所述外部数据源中对应的所述需添加字段信息,得到所述数据信息。
一种日志数据解析装置,包括:
采集模块,用于采集多个外部子***产生的多个日志文件;
解析模块,用于调用预设的日志匹配表,所述日志匹配表中含有所述子***的名称及对应的提取器名称,根据所述子***的名称,查找所述日志匹配表,获取所述提取器名称后,调用所述提取器名称对应的字段提取器,通过所述字段提取器对所述日志文件中的字段进行解析,得到多个有效字段信息;
转换及存储模块,用于将所述有效字段信息通过预设的字段转换器的转换,得到对应的数据信息,将数据信息添加到所述日志文件中后,进行存储。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述日志数据解析方法的步骤。
一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述日志数据解析方法的步骤。
上述日志数据解析方法、装置、计算机设备和存储介质,包括采集多个外部子***产生的多个日志文件;调用预设的日志匹配表,所述日志匹配表中含有所述子***的名称及对应的提取器名称,根据所述子***的名称,查找所述日志匹配表,获取所述提取器名称后,调用所述提取器名称对应的字段提取器,通过所述字段提取器对所述日志文件中的字段进行解析,得到多个有效字段信息;将所述有效字段信息通过预设的字段转换器的转换,得到对应的数据信息,将数据信息添加到所述日志文件中后,进行存储。本发明采集各个子***中的日志文件,通过调用日志配置表的方式,根据不同的子***采用不同的提取器提取日志文件中的信息,对日志集中处理、分类精确处理的方式,得到的有效字段信息更为准确可靠。通过对解析的有效字段信息再转换的进一步处理,丰富了原始日志文件中的数据,为日志文件的后续分析,提供有价值的日志数据。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。
图1为本发明一个实施例中的日志数据解析方法的流程图;
图2为一个实施例中步骤S2的流程图;
图3为本发明一个实施例中日志数据解析装置的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
图1为本发明一个实施例中的日志数据解析方法的流程图,如图1所示,一种日志数据解析方法,包括以下步骤:
步骤S1,采集日志文件:采集多个外部子***产生的多个日志文件。
日志主要包括***日志、应用程序日志和安全日志,每条日志都记载着时间戳、主机名、使用者及操作行为等相关的描述,***运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原因等。经常分析日志可以了解服务器的负荷,性能安全性,及时分析问题、追查错误根源纠正错误。在大数据时代,日志数量巨大,种类多样化,日志的统计和检索的难度加大,一般使用grep、awk和wc等Linux命令能实现检索和统计,但是对于要求更高的查询、排序和统计等要求和庞大的机器数量依然使用这样的方法难免有点力不从心。过去,日志被分散的储存各台服务器上,没有集中管理,难以做关联分析,甚至被删除。使用集中化的日志管理,将所有服务器上的日志收集汇总,即采用分布式日志处理平台对其他服务器上的日志进行收集和处理,则更能方便全面的分析日志。因此本步骤将多个外部子***产生的日志均采集到日志处理平台中,进行集中解析和处理,便于工作人员查看分析各个子***产生的日志数据。
在一个实施例中,采集外部子***产生的日志文件,包括:定时接收预设在子***中的数据收集Logstash工具发送的日志文件,Logstash工具用于采集子***中产生的日志文件,Logstash工具收集多个日志文件,以多线程的方式分别对日志文件转换成目标格式的日志文件。
logstash工具是一种开源工具,可以对子***中的日志文件进行收集、分析,并将其存储。Logstash工具能提供里很多功能强大的滤网以满足各种应用场景。子***定时将logstash工具收集的日志文件发送到日志处理平台,日志处理平台定时采集这些日志文件。logstash工具的工作流程分为三个阶段,日志采集、日志转换和日主输出。原始日志文件被logstash工具采集后,并不是以原始数据的形式流转,而是在日志转换过程中,处理成目标格式的日志文件,以便于后续对日志文件的解析,目标格式可以是结构化类型的日志文件、Json类型的日志文件或非结构化类型的日志文件。在对原始的日志文件处理时,logstash工具通过queue队列流入一条pipline线程中进行日志文件的转换。为了不占用子***及日志处理平台的内存资源,在采集日志文件时,可以将时间设置在晚上10点-早上6点之间,不影响子***白天的正常工作。
本实施例通过Logstash工具采集各个不同子***的日志文件,日志处理平台只需定时接收不同子***的日志文件即可,日志文件的采集简单方便。
在一个实施例中,采集外部子***产生的日志文件,包括:通过子***中预设的文件搜索filebeat采集器,远程监视子***中的多个日志文件,filebeat采集器通过多个探测器检测子***中预设位置的日志目录并查找日志文件,将查找到的日志文件通过收割进程读取每个日志文件中的新内容,将新内容通过处理程序集合成日志文件;接收filebeat采集器发送的日志文件。
Filebeat采集器是一个开源的文件收集器,采用go语言开发,将filebeat采集器安装在子***上作为代理来监听子***中的日志目录或特定的日志文件,并可以把日志文件发送到日志处理平台中。filebeat采集器具体工作时,通过启动一个或多个prospectors探测器去检测制定的日志目录或日志文件,对于探测器探测到的每一个日志文件,通过启动多个收割进程harvester,每个收割进程读取一个日志文件的新内容,并将新内容通过处理程序spooler进行集合成新的日志文件,filebeat采集器将日志文件发送到指定目录。
本实施例通过Filebeat采集器监听并采集子***的日志文件,与Logstash工具相比,虽然不具备logstash工具的filter功能,但是Filebeat采集器占用资源更少,安装也更方便,可以通过包管理直接安装,适用于本实施例采集各个子***中的日志文件。
步骤S2,解析日志文件:调用预设的日志匹配表,日志匹配表中含有子***的名称及对应的提取器名称,根据子***的名称,查找日志匹配表,获取提取器名称后,调用提取器名称对应的字段提取器,通过字段提取器对日志文件中的字段进行解析,得到多个有效字段信息。
不同的子***产生的原始日志结构不同,一般包括结构化日志类型、非结构化日志类型,子***在上传日志文件时,通常也会添加子***的名称作为appname,或者日志处理平台在采集日志文件时,添加子***的名称作为appname用于区分不同属主的日志源。本步骤利用不同子***的名称,通过预先设置的日志匹配表,查找对应的提取器名称,根据提取器名称调用预设在数据库中对应的提取器,实现对不同的子***采用不同提取器进行字段解析的目的。其中,日志匹配表可以采用如下表1所示:
appname | 提取器名称 |
子***1 | Json提取器 |
子***2 | Json提取器 |
子***3 | gork提取器 |
表1
在一个实施例中,如图2所示,步骤S2,包括:
步骤S201,对日志文件分组:对多个日志文件进行分组,形成日志文件组,同一个子***采集的多个日志文件分在同一组日志文件组中。
分组时,可以根据子***的名称进行分组,每组日志文件组含有至少一项日志文件。
步骤S202,排序:根据采集时间对日志文件组进行排序。
在日志处理平台采集多个日志文件时,可以重命名日志文件,增加采集时的时间戳,根据时间戳来对采集的日志文件按日志文件组分别进行排序,每组日志文件组中的日志文件按采集时间先后进行排序。不同日志文件组可以根据第一份采集的日志文件进行排序,也可以根据子***的名称进行排序。本步骤的排序,可以避免后续对字段进行解析时出现遗漏或重复解析的问题。
步骤S203,依次解析日志文件:在每组日志文件组中对多个日志件的字段进行解析前,均调用所述日志匹配表,获取提取器名称后,通过字段提取器对同一组日志文件组中的多个日志文件的字段依次进行解析。
由于本实施例是根据子***的名称进行分组,因此同一组中的日志文件的类型都相同,在对同一组中的日志文件进行解析时,没有必要每次都去调用日志配置表,获取提取器名称。只需要调用一次日志配置表,获取提取器名称后,调用对应的字段提取器,根据排序,依次都同一组中的日志文件逐个解析即可。
本实施例,通过对多个日志文件分组的方式,对每组日志文件组逐个解析,只有在对不同组日志文件组解析前,才调用日志匹配表,减少了获取提取器名称的过程,加快了字段解析速度。
在一个实施例中,字段提取器包括Json提取器,Json提取器提取Json类型的日志文件,Json提取器预设有key分隔符、kv分隔符,通过Json提取器对日志文件中的字段进行解析,得到多个有效字段信息。
字段提取器还包括gork提取器,gork提取器通过正则表达式提取非结构化类型的日志文件,gork提取器预设有多个gork正则表达式,通过gork正则表达式对日志文件中的字段进行解析,得到多个有效字段信息。
gork提取器是使用正则表达式来识别日志文件中的相关数据块。本实施例有两种方式来使用正则表达式:通过直接预设gork正则表达式来匹配进入分组的日志文件;或用grok正则表达式映射正则来匹配进入分组的日志文件。
具体的,在预设gork正则表达式时,可以把一些通用的匹配规则保存为模板直接引用,比如通过{%IPV4}可以匹配IP地址,例如:IPV4的gork正则表达式为:
(?<![0-9])(?:(?:[0-1]?[0-9]{1,2}|2[0-4][0-9]|25[0-5])[.](?:[0-1]?[0-9]{1,2}|2[0-4][0-9]|25[0-5])[.](?:[0-1]?[0-9]{1,2}|2[0-4][0-9]|25[0-5])[.](?:[0-1]?[0-9]{1,2}|2[0-4][0-9]|25[0-5]))(?![0-9]);
在对日志文件进去解析前,可以将存储在数据库中的提取器添加到内存中,去匹配进入分组的日志文件,将日志文件中的字段解析成若干有效字段信息。在内存中解析日志文件,可以实现64个线程去同时处理进入的不同日志文件组,节省内存空间,实现了分布式多线程的功能。
本实施例根据原始日志的日志类型不同,采用Json提取器或gork提取器能满足结构化日志类型和非结构化日志类型的解析,且能解析出较为精确且完整的有效字段信息。
步骤S3,转换及存储:将有效字段信息通过预设的字段转换器的转换,得到对应的数据信息,将数据信息添加到日志文件中后,进行存储。
有效字段信息包括IP地址、主机名信息、登录服务器的用户名、员工编号、时间、API数据接口、URL网址、服务器响应时间或返回状态码等信息,可用于后续的日志分析处理。这些有效字段信息对应的字段转换器在转换前,需要预先配置字段转换器,对不同的有效字段信息配置不同的字段转换规则。
在一个实施例中,字段转化器包括有效字段信息对应的多个字段转换规则,字段转换规则包括数值转换规则、大写转换规则、IP位置转换规则中的至少一项;将有效字段信息通过字段转换器依次进行转换,将字符串类型的有效字段信息,通过数值转换规则的转换,得到数值信息;将小写的字符串类型有效字段信息,通过大写转换规则的转换,得到大写的字符串信息;将IP地址的有效字段信息,通过IP位置转换规则的转换,得到对应的国家、省市、经纬度、时区中的至少一项地址位置信息。
在配置字段转化器的多个字段转换规则时,可以预先设置配置界面,通过配置界面添加各种字段转换规则。除上述举例的几种字段转换规则外,还可以通过配置界面自定义其他字段转换规则,例如员工工号规则等,通过员工工号规则将有效字段信息中含有员工工号的信息进行转换,得到对应的员工姓名、员工年龄或所属子公司中的至少一项员工信息。
在一个实施例中,将有效字段信息通过预设的字段转换器的转换,得到对应的数据信息前,还包括:通过预设的配置界面中的输入字段获取配置信息,配置信息包括有效字段信息、查找表ID信息、需添加字段信息,将获取的配置信息存储在IP位置转换表中;通过配置界面中的上传接口获取外部数据源并存储,将外部数据源的存储路径存储在IP位置转换表的查找表存储路径信息中,且存储路径与有效字段信息对应,致使建立IP位置转换规则;将有效字段信息通过IP位置转换规则的转换时,将有效字段信息与IP位置转换表进行匹配,当IP位置转换表中含有有效字段信息时,通过查找表ID信息和查找表存储路径信息查找到对应的外部数据源,获取外部数据源中对应的需添加字段信息,得到数据信息。
由于分布式日志处理平台没有存储外部数据源,因此在对有效字段信息是IP地址时,为了解析IP地址,本实施例通过配置界面设置上传接口,将外部数据源上传及保存到本地的分布式日志处理平台中,在保存完成后,自动将存储路径保存在IP位置转换表中,便于通过IP位置转换规则获取对应数据信息。
IP位置转换表可以采用如下表2所示:
有效字段信息 | 查找表ID信息 | 需添加字段信息 | 查找表存储路径信息 |
XXXX | XXXX | XXXX | XXXX |
表2
在通过配置界面进行配置时,得到的获取配置信息如下:
有效字段信息:IP地址;
查找表ID信息:geo_location_src.csv;
需添加字段信息:
src_location_country,src_location_province,src_location_city,
src_location_lat,src_location_lon;
查找表存储路径信息:XX/XX/Externaldate。
对IP地址的有效字段信息需要与查找表ID信息为geo_location_src.csv的外部数据源进行匹配,外部数据源是一张IP地理位置信息表,根据IP地址,需添加字段信息是国家、省、城市、纬度、经度,获取的上述需要添加字段信息即为数据信息,这些数据信息用于分布式拒绝服务DDOS攻击行为的分析。
本步骤在对日志文件进行存储时,可以将日志文件存储到Elasticsearch搜索服务器的集群中。ElasticSearch是一个基于Lucene的搜索服务器,它提供了一个分布式多用户能力的全文搜索引擎,将本实施例得到的日志文件存储在Elasticsearch搜索服务器后,作为日志搜索使用的源文件,为工作人员搜索查看提供有价值的日志数据。
本发明实施例日志数据解析方法,通过不同的方法从各种子***中采集众多日志文件,对日志文件在日志处理平台集中处理。处理前,先根据子***的名称进行分组,对同一组中的日志文件采用同一种提取器对日志文件进行解析,对解析得到的有效字段信息还通过字段转换器进行转换,得到数据信息,并将数据信息添加到原始的日志文件中,丰富了原始日志文件中的数据,为后续日志事件分析提供有价值的日志数据。
在一个实施例中,提出了一种日志数据解析装置,如图3所示,包括如下模块:
采集模块,用于采集多个外部子***产生的多个日志文件;
解析模块,用于调用预设的日志匹配表,所述日志匹配表中含有所述子***的名称及对应的提取器名称,根据所述子***的名称,查找所述日志匹配表,获取所述提取器名称后,调用所述提取器名称对应的字段提取器,通过所述字段提取器对所述日志文件中的字段进行解析,得到多个有效字段信息;
转换及存储模块,用于将所述有效字段信息通过预设的字段转换器的转换,得到对应的数据信息,将所述数据信息添加到所述日志文件中后,进行存储。
在一个实施例中,提出了一种计算机设备,包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行计算机可读指令时实现上述各实施例的日志数据解析方法中的步骤。
在一个实施例中,提出了一种存储有计算机可读指令的存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述各实施例的日志数据解析方法中的步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁盘或光盘等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明一些示例性实施例,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (9)
1.一种日志数据解析方法,其特征在于,包括:
采集多个外部子***产生的多个日志文件;
调用预设的日志匹配表,所述日志匹配表中含有所述子***的名称及对应的提取器名称,根据所述子***的名称,查找所述日志匹配表,获取所述提取器名称后,调用所述提取器名称对应的字段提取器,通过所述字段提取器对所述日志文件中的字段进行解析,得到多个有效字段信息;
将所述有效字段信息通过预设的字段转换器的转换,得到对应的数据信息,将所述数据信息添加到所述日志文件中后,进行存储;
所述字段提取器包括Json提取器,所述Json提取器提取Json类型的日志文件,所述Json提取器预设有key分隔符、kv分隔符,通过所述Json提取器对所述日志文件中的字段进行解析,得到多个有效字段信息;
所述字段提取器包括gork提取器,所述gork提取器通过正则表达式提取非结构化类型的日志文件,所述gork提取器预设有多个gork正则表达式,通过所述gork正则表达式对所述日志文件中的字段进行解析,得到多个有效字段信息;
在对日志文件进去解析前,将存储在数据库中的提取器添加到内存中,去匹配进入分组的日志文件,将日志文件中的字段解析成若干有效字段信息。
2.根据权利要求1所述的日志数据解析方法,其特征在于,所述采集外部子***产生的日志文件,包括:
定时接收预设在所述子***中的数据收集Logstash工具发送的所述日志文件,所述Logstash工具用于采集所述子***中产生的日志文件,所述Logstash工具收集多个所述日志文件,以多线程的方式分别对所述日志文件转换成目标格式的日志文件。
3.根据权利要求1所述的日志数据解析方法,其特征在于,所述采集外部子***产生的日志文件,包括:
通过所述子***中预设的文件搜索filebeat采集器,远程监视所述子***中的多个日志文件,所述filebeat采集器通过多个探测器检测所述子***中预设位置的日志目录并查找日志文件,将查找到的日志文件通过收割进程读取每个日志文件中的新内容,将新内容通过处理程序集合成日志文件;
接收所述filebeat采集器发送的日志文件。
4.根据权利要求1所述的日志数据解析方法,其特征在于,所述调用预设的日志匹配表,所述日志匹配表中含有所述子***的名称及对应的提取器名称,根据所述子***的名称,查找所述日志匹配表,获取所述提取器名称后,调用所述提取器名称对应的字段提取器,通过所述字段提取器对所述日志文件中的字段进行解析,包括:
对多个所述日志文件进行分组,形成日志文件组,同一个所述子***采集的多个日志文件分在同一组所述日志文件组中;
根据采集时间对所述日志文件组进行排序;
在每组所述日志文件组中对多个所述日志文 件的字段进行解析前,均调用所述日志匹配表,获取所述提取器名称后,通过所述字段提取器对同一组所述日志文件组中的多个所述日志文件的字段依次进行解析。
5.根据权利要求1所述的日志数据解析方法,其特征在于,所述将所述有效字段信息通过预设的字段转换器的转换,得到对应的数据信息,包括:
字段转化器包括所述有效字段信息对应的多个字段转换规则,所述字段转换规则包括数值转换规则、大写转换规则、IP位置转换规则中的至少一项;
将所述有效字段信息通过所述字段转换器依次进行转换,将字符串类型的所述有效字段信息,通过所述数值转换规则的转换,得到数值信息;
将小写的字符串类型所述有效字段信息,通过所述大写转换规则的转换,得到大写的字符串信息;
将IP地址的所述有效字段信息,通过所述IP位置转换规则的转换,得到对应的国家、省市、经纬度、时区中的至少一项地址位置信息。
6.根据权利要求5所述的日志数据解析方法,其特征在于,所述将所述有效字段信息通过预设的字段转换器的转换,得到对应的数据信息前,还包括:
通过预设的配置界面中的输入字段获取配置信息,所述配置信息包括有效字段信息、查找表ID信息、需添加字段信息,将获取的所述配置信息存储在IP位置转换表中;
通过所述配置界面中的上传接口获取外部数据源并存储,将所述外部数据源的存储路径存储在所述IP位置转换表的查找表存储路径信息中,且所述存储路径与所述有效字段信息对应,致使建立所述IP位置转换规则;
将所述有效字段信息通过所述IP位置转换规则的转换时,将所述有效字段信息与所述IP位置转换表进行匹配,当所述IP位置转换表中含有所述有效字段信息时,通过所述查找表ID信息和查找表存储路径信息查找到对应的外部数据源,获取所述外部数据源中对应的所述需添加字段信息,得到所述数据信息。
7.一种日志数据解析装置,其特征在于,包括:
采集模块,用于采集多个外部子***产生的多个日志文件;
解析模块,用于调用预设的日志匹配表,所述日志匹配表中含有所述子***的名称及对应的提取器名称,根据所述子***的名称,查找所述日志匹配表,获取所述提取器名称后,调用所述提取器名称对应的字段提取器,通过所述字段提取器对所述日志文件中的字段进行解析,得到多个有效字段信息;
转换及存储模块,用于将所述有效字段信息通过预设的字段转换器的转换,得到对应的数据信息,将所述数据信息添加到所述日志文件中后,进行存储;
所述字段提取器包括Json提取器,所述Json提取器提取Json类型的日志文件,所述Json提取器预设有key分隔符、kv分隔符,通过所述Json提取器对所述日志文件中的字段进行解析,得到多个有效字段信息;
所述字段提取器包括gork提取器,所述gork提取器通过正则表达式提取非结构化类型的日志文件,所述gork提取器预设有多个gork正则表达式,通过所述gork正则表达式对所述日志文件中的字段进行解析,得到多个有效字段信息;
所述解析模块,还用于:在对日志文件进去解析前,将存储在数据库中的提取器添加到内存中,去匹配进入分组的日志文件,将日志文件中的字段解析成若干有效字段信息。
8.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如权利要求1至6中任一项权利要求所述日志数据解析方法的步骤。
9.一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至6中任一项权利要求所述日志数据解析方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811182968.5A CN109582551B (zh) | 2018-10-11 | 2018-10-11 | 日志数据解析方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811182968.5A CN109582551B (zh) | 2018-10-11 | 2018-10-11 | 日志数据解析方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109582551A CN109582551A (zh) | 2019-04-05 |
CN109582551B true CN109582551B (zh) | 2022-04-26 |
Family
ID=65919998
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811182968.5A Active CN109582551B (zh) | 2018-10-11 | 2018-10-11 | 日志数据解析方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109582551B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110515894B (zh) * | 2019-08-02 | 2023-07-21 | 济南浪潮数据技术有限公司 | 一种数据格式转换方法、装置、设备及可读存储介质 |
CN110674211B (zh) * | 2019-09-29 | 2022-04-01 | 南京大学 | 一种Oracle数据库AWR报告的自动解析方法和设备 |
CN111125042A (zh) * | 2019-11-13 | 2020-05-08 | 中国建设银行股份有限公司 | 一种确定风险操作事件的方法和装置 |
CN110825792B (zh) * | 2019-11-15 | 2024-06-07 | 珠海市新德汇信息技术有限公司 | 基于golang中间件协程模式下的高并发分布式数据检索方法 |
CN111324648B (zh) * | 2020-01-21 | 2021-08-03 | 北京工业大数据创新中心有限公司 | 一种时序数据的处理方法及装置 |
CN111427858A (zh) * | 2020-03-18 | 2020-07-17 | 中国邮政储蓄银行股份有限公司 | 日志处理***及其处理方法 |
CN111639016A (zh) * | 2020-05-29 | 2020-09-08 | 北京合力思腾科技股份有限公司 | 大数据日志分析方法、装置及计算机存储介质 |
CN113806158A (zh) * | 2020-06-11 | 2021-12-17 | 奇安信科技集团股份有限公司 | 一种日志的接收与处理方法、装置、电子设备和存储介质 |
CN111881094B (zh) * | 2020-07-28 | 2023-07-18 | 平安科技(深圳)有限公司 | 日志中关键信息提取方法、装置、终端及存储介质 |
CN111967850B (zh) * | 2020-08-19 | 2022-10-18 | 支付宝(杭州)信息技术有限公司 | 一种数据报送监测方法、装置及电子设备 |
CN112328567B (zh) * | 2020-10-31 | 2022-10-04 | 中盈优创资讯科技有限公司 | 一种物联网mme日志数据的处理方法及装置 |
CN112269825A (zh) * | 2020-11-13 | 2021-01-26 | 中盈优创资讯科技有限公司 | 一种etl解析异常数据留存的方法及装置 |
CN112463533A (zh) * | 2020-11-25 | 2021-03-09 | 杭州安恒信息技术股份有限公司 | 日志数据解析方法、装置、电子装置和存储介质 |
CN112612767A (zh) * | 2020-12-30 | 2021-04-06 | 北京安博通科技股份有限公司 | 一种日志文件快速解析方法及装置 |
CN112732759B (zh) * | 2020-12-31 | 2023-02-03 | 青岛海尔科技有限公司 | 数据处理方法及装置,存储介质及电子装置 |
CN112463772B (zh) * | 2021-02-02 | 2022-05-27 | 北京信安世纪科技股份有限公司 | 日志处理方法、装置、日志服务器及存储介质 |
CN114584619B (zh) * | 2022-03-07 | 2024-02-23 | 北京北信源软件股份有限公司 | 设备数据解析方法、装置、电子设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9021303B1 (en) * | 2012-09-24 | 2015-04-28 | Emc Corporation | Multi-threaded in-memory processing of a transaction log for concurrent access to data during log replay |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7653633B2 (en) * | 2005-11-12 | 2010-01-26 | Logrhythm, Inc. | Log collection, structuring and processing |
JP4725622B2 (ja) * | 2008-09-22 | 2011-07-13 | 日本電気株式会社 | ログ管理装置、システム、方法、及びプログラム |
US20130282739A1 (en) * | 2012-04-18 | 2013-10-24 | International Business Machines Corporation | Generating a log parser by automatically identifying regular expressions matching a sample log |
US9767171B2 (en) * | 2015-04-03 | 2017-09-19 | Oracle International Corporation | Method and system for implementing an operating system hook in a log analytics system |
CN106021554A (zh) * | 2016-05-30 | 2016-10-12 | 北京奇艺世纪科技有限公司 | 一种日志解析方法及装置 |
CN106294673B (zh) * | 2016-08-08 | 2020-04-24 | 杭州玳数科技有限公司 | 一种用户自定义规则实时解析日志数据的方法与*** |
-
2018
- 2018-10-11 CN CN201811182968.5A patent/CN109582551B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9021303B1 (en) * | 2012-09-24 | 2015-04-28 | Emc Corporation | Multi-threaded in-memory processing of a transaction log for concurrent access to data during log replay |
Also Published As
Publication number | Publication date |
---|---|
CN109582551A (zh) | 2019-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109582551B (zh) | 日志数据解析方法、装置、计算机设备和存储介质 | |
CN109034993B (zh) | 对账方法、设备、***及计算机可读存储介质 | |
CN112434208B (zh) | 一种孤立森林的训练及其网络爬虫的识别方法与相关装置 | |
CN110569214B (zh) | 用于日志文件的索引构建方法、装置及电子设备 | |
CN109542741B (zh) | 日志自动分组存储方法、装置、计算机设备和存储介质 | |
CN107451149B (zh) | 流量数据查询任务的监控方法及其装置 | |
CN111866016B (zh) | 日志的分析方法及*** | |
EP3432520B1 (en) | Efficient storage and querying of time series metrics | |
CN111046011B (zh) | 日志收集方法、***、装置、电子设备及可读存储介质 | |
CN108521339B (zh) | 一种基于集群日志的反馈式节点故障处理方法及*** | |
CN108108288A (zh) | 一种日志数据解析方法、装置及设备 | |
CN102780726A (zh) | 一种基于web平台的日志分析方法及*** | |
US20140317137A1 (en) | Log management computer and log management method | |
CN113448935A (zh) | 用于提供日志信息的方法、电子设备和计算机程序产品 | |
CN114528457A (zh) | Web指纹检测方法及相关设备 | |
CN111258973A (zh) | Redis慢日志的存储、展示方法、装置、设备和介质 | |
CN113688288A (zh) | 数据关联分析方法、装置、计算机设备和存储介质 | |
CN106648722B (zh) | 基于大数据的Flume接收端数据处理方法和装置 | |
CN113778810A (zh) | 一种日志收集方法、装置及*** | |
US10223529B2 (en) | Indexing apparatus and method for search of security monitoring data | |
CN114422341B (zh) | 一种基于指纹特征的工控资产识别方法及*** | |
CN114416489A (zh) | ***运行状态的监控方法、装置、计算机设备及存储介质 | |
CN112131215B (zh) | 自底向上的数据库信息获取方法及装置 | |
CN114168557A (zh) | 一种访问日志的处理方法、装置、计算机设备和存储介质 | |
CN111611483B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |