CN115391279A - 一种日志处理方法、装置、电子设备及存储介质 - Google Patents
一种日志处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115391279A CN115391279A CN202211020001.3A CN202211020001A CN115391279A CN 115391279 A CN115391279 A CN 115391279A CN 202211020001 A CN202211020001 A CN 202211020001A CN 115391279 A CN115391279 A CN 115391279A
- Authority
- CN
- China
- Prior art keywords
- log data
- log
- formatted
- data
- index
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
- G06F16/134—Distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
Abstract
本发明提供了一种日志处理方法、装置、电子设备及计算机可读存储介质。本发明提供的日志处理方法,包括:获取日志数据,根据日志数据的类型对日志数据进行格式化,得到格式化后的日志数据;将格式化后的日志数据存储至分布式搜索和分析引擎中,并对分布式搜索和分析引擎中的格式化后的日志数据添加对应的索引;根据格式化后的日志数据对应的索引,对格式化后的日志数据进行归类,根据归类结果对格式化后的日志数据对应的索引设置标签,得到包含标签的索引;根据包含标签的索引,将格式化后的日志数据与日志标准进行匹配,得到匹配结果,根据匹配结果确定对应的日志数据是否正常。本发明的日志处理方法,可以提高日志处理的及时性和效率。
Description
技术领域
本发明涉及日志处理技术领域,尤其涉及一种日志处理方法、装置、电子设备及计算机可读存储介质。
背景技术
日志是一个系统是否稳定运行的关键监控指标,日志监控维度主要有关键字、日志量、打印日志的级别和日志打印规范等。传统的日志监控,依赖于人工处理,通过ELK(分布式搜索和分析引擎Elasticsearch,数据收集引擎Logstash,分析和可视化平台Kibana)等日志收集以及处理存储的方式,进行管理和监控,然后再由对应系统的运维工程师对接对应的系统开发和项目,通过新建特性和缺陷来完成优化,每个阶段都需要人为的进行干预,在系统数量庞大的时候,会出现人为处理不及时,处理效率低等现象。
发明内容
本发明的目的在于提供一种日志处理方法、装置、电子设备及计算机可读存储介质,以解决现有技术中日志处理不及时、处理效率低的技术问题。
本发明的技术方案如下,提供了一种日志处理方法,包括:
获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,得到格式化后的日志数据;
将所述格式化后的日志数据存储至分布式搜索和分析引擎中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引;
根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,得到归类结果,根据所述归类结果对所述格式化后的日志数据对应的索引设置标签,得到包含标签的索引;
根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,得到匹配结果,根据所述匹配结果确定对应的日志数据是否正常。
进一步地,获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,包括:
运行日志采集器进行日志数据收集,获取所述日志数据,通过数据收集引擎并根据所述日志数据的类型,对所述日志数据进行格式化,其中,所述日志数据类型包括前端服务类型、Java类型以及Python类型。
进一步地,根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,包括:
将所述格式化后的日志数据对应的索引中,包含Tomcat或Java标记的索引归为一类,将所述格式化后的日志数据对应的索引中,包括nginx或前端ingress标记的索引归为一类。
进一步地,根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,包括:
根据所述包含标签的索引确定所述格式化后的日志数据对应的日志标准,将所述格式化后的日志数据与所述对应的日志标准进行正则匹配。
进一步地,根据所述匹配结果确定对应的日志数据是否正常,包括:
若所述格式化后的日志数据与所述对应的日志标准匹配成功,则所述对应的日志数据为正常,若所述格式化后的日志数据与所述对应的日志标准匹配不成功,则所述对应的日志数据为异常。
进一步地,在根据所述匹配结果确定对应的日志数据是否正常之后,还包括:若所述对应的日志数据为异常,或者,所述对应的日志数据包括debug或者Info关键字,则触发异常告警。
进一步地,在将所述格式化后的日志数据存储至分布式搜索和分析引擎中之后,还包括:
对所述分布式搜索和分析引擎中的所述格式化后的日志数据进行统计,获取所述格式化后的日志数据在各个时段的数据量,若所述格式化后的日志数据在某个时段的数据量大于预设数据量阈值,则触发日志量异常告警;若所述格式化后的日志数据在某个时段的数据增量大于超过预设增量阈值,则触发日志增量异常告警。
本发明的另一技术方案如下,还提供了一种日志处理装置,包括日志数据预处理模块、索引添加模块、日志数据归类模块以及日志数据匹配模块;
所述日志数据预处理模块,用于获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,得到格式化后的日志数据;
所述索引添加模块,用于将所述格式化后的日志数据存储至分布式搜索和分析引擎中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引;
所述日志数据归类模块,用于根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,得到归类结果,根据所述归类结果对所述格式化后的日志数据对应的索引设置标签,得到包含标签的索引;
所述日志数据匹配模块,用于根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,得到匹配结果,根据所述匹配结果确定对应的日志数据是否正常。
本发明的另一技术方案如下,还提供了一种电子设备,包括存储器、处理器,所述存储器存储有可被所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一项技术方案所述的日志处理方法。
本发明的另一技术方案如下,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项技术方案所述的日志处理方法。
本发明的有益效果在于:获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,得到格式化后的日志数据;将所述格式化后的日志数据存储至分布式搜索和分析引擎中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引;根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,得到归类结果,根据所述归类结果对所述格式化后的日志数据对应的索引设置标签,得到包含标签的索引;根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,得到匹配结果,根据所述匹配结果确定对应的日志数据是否正常;通过上述技术方案,可以实现对日志的处理,并可以提高日志处理的及时性和效率。
附图说明
图1为本发明实施例的日志处理方法的流程示意图;
图2为本发明实施例的日志处理装置的结构示意图;
图3为本发明实施例的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。在本说明书中术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
图1是本发明实施例的日志处理方法的流程示意图。需注意的是,若有实质上相同的结果,本发明的日志处理方法并不以图1所示的流程顺序为限。如图1所示,该日志处理方法,主要包括以下步骤:
S1,获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,得到格式化后的日志数据;
S2,将所述格式化后的日志数据存储至分布式搜索和分析引擎中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引;
S3,根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,得到归类结果,根据所述归类结果对所述格式化后的日志数据对应的索引设置标签,得到包含标签的索引;
S4,根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,得到匹配结果,根据所述匹配结果确定对应的日志数据是否正常。
本发明实施例通过获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,得到格式化后的日志数据;将所述格式化后的日志数据存储至分布式搜索和分析引擎中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引;根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,得到归类结果,根据所述归类结果对所述格式化后的日志数据对应的索引设置标签,得到包含标签的索引;根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,得到匹配结果,根据所述匹配结果确定对应的日志数据是否正常;可以实现对日志的处理,并可以提高日志处理的及时性和效率;其中,对日志的处理包括对日志的监控处理等。
在一个可选的实施方式中,获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,包括:
运行日志采集器进行日志数据收集,获取所述日志数据,通过数据收集引擎并根据所述日志数据的类型,对所述日志数据进行格式化,其中,所述日志数据类型包括前端服务类型、Java类型以及Python类型。
一个具体实施例中,通过软件服务端安装filebeatagent或者pod,以sidecar的形式运行filebeat进行软件日志内容收集,通过Logstash对收集日志进行格式化。其中,filebeat是用于转发和集中日志数据的轻量级传送工具,filebeat可以监视指定的日志文件或位置,收集日志事件,并将它们转发到Elasticsearch或Logstash进行索引。启动filebeat时,它将启动一个或多个输入,这些输入将在日志数据指定的位置中查找。对于filebeat所找到的每个日志,filebeat都会启动收集器,每个收集器都读取单个日志以获取新内容,并将新日志数据发送到libbeat,libbeat将聚集事件,并将聚集事件的数据发送到为filebeat配置的输出。
sidecar为一种容器,Logstash为数据收集引擎,即为具备实时数据传输能力的管道,可以将数据信息从管道的输入端传输到管道的输出端,与此同时该管道还可以根据需求在中间加上滤网,Logstash可以提供里很多功能强大的滤网以满足各种应用场景。
另一个具体实施例中,将所述格式化后的日志数据存储至分布式搜索和分析引擎中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引,具体为,将所述格式化后的日志数据存储至分布式搜索和分析引擎Elasticsearch中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引index;在对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引之后,可以在Logstash配置output部分,以设置所述对应的索引区分。
在一个可选的实施方式中,根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,包括:
将所述格式化后的日志数据对应的索引中,包含Tomcat或Java标记的索引归为一类,将所述格式化后的日志数据对应的索引中,包括nginx或前端ingress标记的索引归为一类。
需要说明的是,不同的服务对应的日志数据包含不同的内容,例如,对于前端,日志数据包括的内容有地址和请求方法等,对于Java,日志数据包括的内容有请求头和请求的详细信息。本发明实施例通过上述方式对所述格式化后的日志数据进行归类,可以便于后续将所述格式化后的日志数据与对应的日志标准进行匹配。其中,Tomcat服务器为开放源代码的Web应用服务器,属于轻量级应用服务器;当在一台机器上配置好Apache服务器,可利用它响应HTML页面的访问请求,实际上Tomcat是Apache服务器的扩展,当运行tomcat时,Tomcat实际上作为一个与Apache独立的进程单独运行的;nginx为高性能的HTTP和反向代理web服务器。
一个具体实施例中,将所述格式化后的日志数据对应的索引中包含Tomcat或Java标记的索引归为一类,将所述格式化后的日志数据对应的索引中,包括nginx或前端ingress标记的索引归为一类后,为每一类索引设置不同的标签。
在一个可选的实施方式中,根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,包括:
根据所述包含标签的索引确定所述格式化后的日志数据对应的日志标准,将所述格式化后的日志数据与所述对应的日志标准进行正则匹配。
一种具体实施例中,使用grok自定义正则对所述格式化后的日志数据与所述对应的日志标准进行匹配,其中,Grok是Logstash中最重要的插件。
对于日志10.173.28.1122018-11-2216:30:58GET/AUTO/users/loginSuccess.do200461120.075;则正则匹配如下,
(?<User_ip>[0-9\.]+)\s+(?<Date>[0-9\-]+\s[0-9\:]+)\s+(?<Method>[A-Z]+)\s+(?<Url>[\/A-Za-z0-9\.]+)\s+(?<Status>[0-9]+)\s+(?<Request_send>[0-9]+)\s+(?<Request_time>[0-9\.]+);通过调试工具解析出的结果如下,
{"User_ip":[["10.173.28.112"]],
"Date":[["2018-11-2216:30:58]],
"Method":[["GET"]],"Ur1";[["/AUT0/users/loginSuccess.do"]],
'Status":[["200"]]}.
在一个可选的实施方式中,根据所述匹配结果确定对应的日志数据是否正常,包括:
若所述格式化后的日志数据与所述对应的日志标准匹配成功,则所述对应的日志数据为正常,若所述格式化后的日志数据与所述对应的日志标准匹配不成功,则所述对应的日志数据为异常。
一个具体实施例中,建立正则匹配表达式,通过规范的日志格式即日志标准,与所述分布式搜索和分析引擎中的所述格式化后的日志数据进行对比,如匹配结果失败,则触发异常,在监控到日志异常之后,进行告警;告警的具体方式可以为,发送具体的告警邮件给对应的软件开发团队,然后通过调取敏捷管理工具API,例如jira,自动建立STORY和缺陷,通过研发管理工具对接开发团队对异常日志数据进行优化跟踪。
在一个可选的实施方式中,在根据所述匹配结果确定对应的日志数据是否正常之后,还包括:若所述对应的日志数据为异常,或者,所述对应的日志数据包括debug或者Info关键字,则触发异常告警。
一个具体实施例中,日志打印等级可以通过关键字监控,可以监控到打印日志的等级是否符合标准,此时的日志数据可以包括打印WARN以上的日志文件,通过日志打标签的方式,对所述格式化后的日志数据进行归类,得到归类结果,根据所述归类结果对所述格式化后的日志数据对应的索引设置标签,将所述格式化后的日志数据与日志规范上面的日志标准(标准日志)进行正则对比,如出现正则不匹配,进行相应告警。
在一个可选的实施方式中,在将所述格式化后的日志数据存储至分布式搜索和分析引擎中之后,还包括:
对所述分布式搜索和分析引擎中的所述格式化后的日志数据进行统计,获取所述格式化后的日志数据在各个时段的数据量,若所述格式化后的日志数据在某个时段的数据量大于预设数据量阈值,则触发日志量异常告警;若所述格式化后的日志数据在某个时段的数据增量大于超过预设增量阈值,则触发日志增量异常告警。
一个具体实施例中,通过对Elasticsearch中的所述格式化后的日志数据进行统计,对各个时间段(时段)的日志量进行统计分析,对每个时段(例如每24小时)总日志大小和日志大小增量的对比分析,可以确定日志量是否存在异常或者日志增量是否存在异常,以便提前做出应对。其中,所述日志增量即为一个时间段相对上一个时间段的增加量。
另一个具体实施例中,若触发日志量异常告警、触发日志增量异常告警或者触发一般的异常告警(即由于日志数据不匹配或者日志数据包含某个关键词所触发的告警),则可以进行人工进行确认,进而对相关软件或者赢家进行优化处理,例如,发版或者调整配置,对相关软件或者硬件优化处理完成后,可以手动关闭异常,然后通过勾子触发验收。对相关软件或者硬件优化处理完成后,通过持续地对日志多维度的对比,判定日志是否已经标准,如果是,判定优化完成,通过邮件反馈给责任人,判定验收完成。
本发明实施例公开了一种日志处理方法,通过获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,得到格式化后的日志数据;将所述格式化后的日志数据存储至分布式搜索和分析引擎中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引;根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,得到归类结果,根据所述归类结果对所述格式化后的日志数据对应的索引设置标签,得到包含标签的索引;根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,得到匹配结果,根据所述匹配结果确定对应的日志数据是否正常;可以实现对日志的处理,并可以提高日志处理的及时性和效率。
本发明实施例以日志规范作为日志规范要求,即日志标准,通过日志平台,获取日志数据,对日志数据进行存储及解析,然后可以对接告警平台,对于已有的不规范日志进行告警,可以针对一些隐性问题进行智能监控,例如日志数量大小、日志等级以及日志内容规范等,然后可以对接代码管理平台,对已有的日志问题进行处理以及反馈,从而正向的、有序的处理生产中的问题,减少人工出现的疏漏,实现高效的运维。
本发明实施例提供的日志处理方法,可以基于人工智能进行构建,基于人工智能技术对相关的数据进行获取和处理,实现无人值守的人工智能的日志处理。其中,人工智能(ArtificialIntelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
图2是本发明实施例的日志处理装置的结构示意图,如图2所示,该日志处理装置20包括日志数据预处理模块21、索引添加模块22、日志数据归类模块23以及日志数据匹配模块24;
所述日志数据预处理模块21,用于获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,得到格式化后的日志数据;
所述索引添加模块22,用于将所述格式化后的日志数据存储至分布式搜索和分析引擎中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引;
所述日志数据归类模块23,用于根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,得到归类结果,根据所述归类结果对所述格式化后的日志数据对应的索引设置标签,得到包含标签的索引;
所述日志数据匹配模块24,用于根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,得到匹配结果,根据所述匹配结果确定对应的日志数据是否正常。
本发明实施例通过所述日志数据预处理模块21,获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,得到格式化后的日志数据;通过所述索引添加模块22,将所述格式化后的日志数据存储至分布式搜索和分析引擎中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引;通过所述日志数据归类模块23,根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,得到归类结果,根据所述归类结果对所述格式化后的日志数据对应的索引设置标签,得到包含标签的索引;通过所述日志数据匹配模块24,根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,得到匹配结果,根据所述匹配结果确定对应的日志数据是否正常;可以实现对日志的处理,并可以提高日志处理的及时性和效率。
在一个可选的实施方式中,所述日志数据预处理模块21,获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,包括:
运行日志采集器进行日志数据收集,获取所述日志数据,通过数据收集引擎并根据所述日志数据的类型,对所述日志数据进行格式化,其中,所述日志数据类型包括前端服务类型、Java类型以及Python类型。
一个具体实施例中,通过软件服务端安装filebeatagent或者pod,以sidecar的形式运行filebeat进行软件日志内容收集,通过Logstash对收集日志进行格式化。其中,filebeat是用于转发和集中日志数据的轻量级传送工具,filebeat可以监视指定的日志文件或位置,收集日志事件,并将它们转发到Elasticsearch或Logstash进行索引。启动filebeat时,它将启动一个或多个输入,这些输入将在日志数据指定的位置中查找。对于filebeat所找到的每个日志,filebeat都会启动收集器,每个收集器都读取单个日志以获取新内容,并将新日志数据发送到libbeat,libbeat将聚集事件,并将聚集事件的数据发送到为filebeat配置的输出。
另一个具体实施例中,将所述格式化后的日志数据存储至分布式搜索和分析引擎中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引,具体为,将所述格式化后的日志数据存储至分布式搜索和分析引擎Elasticsearch中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引index;在对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引之后,可以在Logstash配置output部分,以设置所述对应的索引区分。
在一个可选的实施方式中,所述日志数据归类模块23,根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,包括:
将所述格式化后的日志数据对应的索引中,包含Tomcat或Java标记的索引归为一类,将所述格式化后的日志数据对应的索引中,包括nginx或前端ingress标记的索引归为一类。
其中,不同的服务对应的日志数据包含不同的内容,例如,对于前端,日志数据包括的内容有地址和请求方法等,对于Java,日志数据包括的内容有请求头和请求的详细信息。本发明实施例通过上述方式对所述格式化后的日志数据进行归类,可以便于后续将所述格式化后的日志数据与对应的日志标准进行匹配。其中,Tomcat服务器为开放源代码的Web应用服务器,属于轻量级应用服务器;当在一台机器上配置好Apache服务器,可利用它响应HTML页面的访问请求,实际上Tomcat是Apache服务器的扩展,当运行tomcat时,Tomcat实际上作为一个与Apache独立的进程单独运行的;nginx为高性能的HTTP和反向代理web服务器。
一个具体实施例中,将所述格式化后的日志数据对应的索引中,包含Tomcat或Java标记的索引归为一类,将所述格式化后的日志数据对应的索引中,包括nginx或前端ingress标记的索引归为一类后,为每一类索引设置不同的标签。
在一个可选的实施方式中,所述日志数据匹配模块24,根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,包括:
根据所述包含标签的索引确定所述格式化后的日志数据对应的日志标准,将所述格式化后的日志数据与所述对应的日志标准进行正则匹配。
一种具体实施例中,使用grok自定义正则对所述格式化后的日志数据与所述对应的日志标准进行匹配,其中,Grok是Logstash中最重要的插件。
在一个可选的实施方式中,所述日志数据匹配模块24,根据所述匹配结果确定对应的日志数据是否正常,包括:
若所述格式化后的日志数据与所述对应的日志标准匹配成功,则所述对应的日志数据为正常,若所述格式化后的日志数据与所述对应的日志标准匹配不成功,则所述对应的日志数据为异常。
一个具体实施例中,建立正则匹配表达式,通过规范的日志格式即日志标准,与所述分布式搜索和分析引擎中的所述格式化后的日志数据进行对比,如匹配结果失败,则触发异常,在监控到日志异常之后,进行告警;告警的具体方式可以为,发送具体的告警邮件给对应的软件开发团队,然后通过调取敏捷管理工具API,例如jira,自动建立STORY和缺陷,通过研发管理工具对接开发团队对异常日志数据进行优化跟踪。
在一个可选的实施方式中,所述日志处理装置20还包括异常告警模块,所述异常告警模块,用于在所述对应的日志数据为异常时,或者,所述对应的日志数据包括debug或者Info关键字时,触发异常告警。
一个具体实施例中,日志打印等级可以通过关键字监控,可以监控到打印日志的等级是否符合标准,此时的日志数据可以包括打印WARN以上的日志文件,通过日志打标签的方式,对所述格式化后的日志数据进行归类,得到归类结果,根据所述归类结果对所述格式化后的日志数据对应的索引设置标签,将所述格式化后的日志数据与日志规范上面的日志标准(标准日志)进行正则对比,如出现正则不匹配,进行相应告警。
在一个可选的实施方式中,所述异常告警模块还用于,在将所述格式化后的日志数据存储至分布式搜索和分析引擎中之后,对所述分布式搜索和分析引擎中的所述格式化后的日志数据进行统计,获取所述格式化后的日志数据在各个时段的数据量,当所述格式化后的日志数据在某个时段的数据量大于预设数据量阈值时,则触发日志量异常告警;当所述格式化后的日志数据在某个时段的数据增量大于超过预设增量阈值时,则触发日志增量异常告警。
一个具体实施例中,通过对Elasticsearch中的所述格式化后的日志数据进行统计,对各个时间段(时段)的日志量进行统计分析,对每个时间段(例如每24小时)总日志大小和日志大小增量的对比分析,可以确定日志量是否存在异常或者日志增量是否存在异常,以便提前做出应对。其中,所述日志增量即为一个时间段相对上一个时间段的增加量。
另一个具体实施例中,若触发日志量异常告警、触发日志增量异常告警或者触发一般的异常告警(即由于日志数据不匹配或者日志数据包含某个关键词所触发的告警),则可以进行人工进行确认,进而对相关软件或者赢家进行优化处理,例如,发版或者调整配置,对相关软件或者硬件优化处理完成后,可以手动关闭异常,然后通过勾子触发验收。对相关软件或者硬件优化处理完成后,通过持续地对日志多维度的对比,判定日志是否已经标准,如果是,判定优化完成,通过邮件反馈给责任人,判定验收完成。
本发明实施例公开了一种日志处理装置,通过所述日志数据预处理模块21,获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,得到格式化后的日志数据;通过所述索引添加模块22,将所述格式化后的日志数据存储至分布式搜索和分析引擎中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引;通过所述日志数据归类模块23,根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,得到归类结果,根据所述归类结果对所述格式化后的日志数据对应的索引设置标签,得到包含标签的索引;通过所述日志数据匹配模块24,根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,得到匹配结果,根据所述匹配结果确定对应的日志数据是否正常;可以实现对日志的处理,并可以提高日志处理的及时性和效率。
本发明实施例以日志规范作为日志规范要求,即日志标准,通过日志平台,获取日志数据,对日志数据进行存储及解析,然后可以对接告警平台,对于已有的不规范日志进行告警,可以针对一些隐性问题进行智能监控,例如日志数量大小、日志等级以及日志内容规范等,然后可以对接代码管理平台,对已有的日志问题进行处理以及反馈,从而正向的、有序的处理生产中的问题,减少人工出现的疏漏,实现高效的运维。
图3是本发明实施例的电子设备的结构示意图。如图3所示,该电子设备30包括处理器31及和处理器31通信连接的存储器32。
存储器32存储有用于实现上述任一实施例的所述日志处理方法的程序指令。
处理器31用于执行存储器32存储的程序指令以进行代码测试。
其中,处理器31还可以称为CPU(CentralProcessingUnit,中央处理单元)。处理器31可能是一种集成电路芯片,具有信号的处理能力。处理器31还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本发明实施例提供一种存储介质,本发明实施例的存储介质存储有能够实现上述所有方法的程序指令,所述存储介质可以是非易失性,也可以是易失性。其中,该程序指令可以以软件产品的形式存储在上述存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。以上仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围。
以上所述的仅是本发明的实施方式,在此应当指出,对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出改进,但这些均属于本发明的保护范围。
Claims (10)
1.一种日志处理方法,其特征在于,包括如下步骤:
获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,得到格式化后的日志数据;
将所述格式化后的日志数据存储至分布式搜索和分析引擎中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引;
根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,得到归类结果,根据所述归类结果对所述格式化后的日志数据对应的索引设置标签,得到包含标签的索引;
根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,得到匹配结果,根据所述匹配结果确定对应的日志数据是否正常。
2.根据权利要求1所述的日志处理方法,其特征在于,获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,包括:
运行日志采集器进行日志数据收集,获取所述日志数据,通过数据收集引擎并根据所述日志数据的类型,对所述日志数据进行格式化,其中,所述日志数据类型包括前端服务类型、Java类型以及Python类型。
3.根据权利要求1所述的日志处理方法,其特征在于,根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,包括:
将所述格式化后的日志数据对应的索引中,包含Tomcat或Java标记的索引归为一类,将所述格式化后的日志数据对应的索引中,包括nginx或前端ingress标记的索引归为一类。
4.根据权利要求1所述的日志处理方法,其特征在于,根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,包括:
根据所述包含标签的索引确定所述格式化后的日志数据对应的日志标准,将所述格式化后的日志数据与所述对应的日志标准进行正则匹配。
5.根据权利要求4述的日志处理方法,其特征在于,根据所述匹配结果确定对应的日志数据是否正常,包括:
若所述格式化后的日志数据与所述对应的日志标准匹配成功,则所述对应的日志数据为正常,若所述格式化后的日志数据与所述对应的日志标准匹配不成功,则所述对应的日志数据为异常。
6.根据权利要求5述的日志处理方法,其特征在于,在根据所述匹配结果确定对应的日志数据是否正常之后,还包括:若所述对应的日志数据为异常,或者,所述对应的日志数据包括debug或者Info关键字,则触发异常告警。
7.根据权利要求1所述的日志处理方法,其特征在于,在将所述格式化后的日志数据存储至分布式搜索和分析引擎中之后,还包括:
对所述分布式搜索和分析引擎中的所述格式化后的日志数据进行统计,获取所述格式化后的日志数据在各个时段的数据量,若所述格式化后的日志数据在某个时段的数据量大于预设数据量阈值,则触发日志量异常告警;若所述格式化后的日志数据在某个时段的数据增量大于超过预设增量阈值,则触发日志增量异常告警。
8.一种日志处理装置,其特征在于,包括日志数据预处理模块、索引添加模块、日志数据归类模块以及日志数据匹配模块;
所述日志数据预处理模块,用于获取日志数据,根据所述日志数据的类型对所述日志数据进行格式化,得到格式化后的日志数据;
所述索引添加模块,用于将所述格式化后的日志数据存储至分布式搜索和分析引擎中,并对所述分布式搜索和分析引擎中的所述格式化后的日志数据添加对应的索引;
所述日志数据归类模块,用于根据所述格式化后的日志数据对应的索引,对所述格式化后的日志数据进行归类,得到归类结果,根据所述归类结果对所述格式化后的日志数据对应的索引设置标签,得到包含标签的索引;
所述日志数据匹配模块,用于根据所述包含标签的索引,将所述格式化后的日志数据与日志标准进行匹配,得到匹配结果,根据所述匹配结果确定对应的日志数据是否正常。
9.一种电子设备,包括存储器、处理器,所述存储器存储有可被所述处理器执行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的日志处理方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的日志处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211020001.3A CN115391279A (zh) | 2022-08-24 | 2022-08-24 | 一种日志处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211020001.3A CN115391279A (zh) | 2022-08-24 | 2022-08-24 | 一种日志处理方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115391279A true CN115391279A (zh) | 2022-11-25 |
Family
ID=84123281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211020001.3A Pending CN115391279A (zh) | 2022-08-24 | 2022-08-24 | 一种日志处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115391279A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117478535A (zh) * | 2023-12-26 | 2024-01-30 | 北京天空卫士网络安全技术有限公司 | 一种日志存储的方法和装置 |
-
2022
- 2022-08-24 CN CN202211020001.3A patent/CN115391279A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117478535A (zh) * | 2023-12-26 | 2024-01-30 | 北京天空卫士网络安全技术有限公司 | 一种日志存储的方法和装置 |
CN117478535B (zh) * | 2023-12-26 | 2024-04-19 | 北京天空卫士网络安全技术有限公司 | 一种日志存储的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110928718B (zh) | 一种基于关联分析的异常处理方法、系统、终端及介质 | |
US8650444B2 (en) | Operation management device and operation management method | |
CN111881011A (zh) | 日志管理方法、平台、服务器及存储介质 | |
CN110908883A (zh) | 用户画像数据监控方法、系统、设备及存储介质 | |
CN112100149B (zh) | 日志自动化分析系统 | |
CN111866016A (zh) | 日志的分析方法及系统 | |
CN114648393A (zh) | 一种应用于招投标的数据挖掘方法、系统及设备 | |
CN115391279A (zh) | 一种日志处理方法、装置、电子设备及存储介质 | |
CN110912757A (zh) | 业务的监控方法和服务器 | |
CN115309815A (zh) | 一种基于大数据的网络舆情监测系统及方法 | |
CN110855461A (zh) | 一种基于关联分析和规则库的日志分析方法 | |
CN113505044A (zh) | 数据库告警方法、装置、设备和存储介质 | |
CN113343228A (zh) | 事件可信度分析方法、装置、电子设备及可读存储介质 | |
CN108228417A (zh) | 车联网日志处理方法及处理装置 | |
CN110149303B (zh) | 一种党校的网络安全预警方法及预警系统 | |
CN110751092A (zh) | 基于物联网的农业监控方法及装置、存储介质及电子设备 | |
CN114546780A (zh) | 数据监控方法、装置、设备、系统及存储介质 | |
US11822578B2 (en) | Matching machine generated data entries to pattern clusters | |
CN112148562B (zh) | 一种基于分布式系统的接口关系的分析方法 | |
CN114996080A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN112418449A (zh) | 一种供电线路故障定位模型的生成方法、定位方法、装置 | |
CN114666145B (zh) | 一种基于网络采集的安全预警方法及系统 | |
CN113806196B (zh) | 根因分析方法及系统 | |
CN117971600A (zh) | 性能监控方法、设备、可读存储介质及计算机程序产品 | |
CN114595363A (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 |