CN116366420A - 日志监控方法、电子设备及可读存储介质 - Google Patents
日志监控方法、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN116366420A CN116366420A CN202111610630.7A CN202111610630A CN116366420A CN 116366420 A CN116366420 A CN 116366420A CN 202111610630 A CN202111610630 A CN 202111610630A CN 116366420 A CN116366420 A CN 116366420A
- Authority
- CN
- China
- Prior art keywords
- log
- abnormal
- text
- category
- information representing
- 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
- 238000000034 method Methods 0.000 title claims abstract description 71
- 238000012544 monitoring process Methods 0.000 title claims abstract description 58
- 230000002159 abnormal effect Effects 0.000 claims abstract description 72
- 230000005856 abnormality Effects 0.000 claims abstract description 30
- 230000004044 response Effects 0.000 claims description 19
- 230000015654 memory Effects 0.000 claims description 13
- 238000004891 communication Methods 0.000 claims description 11
- 238000000605 extraction Methods 0.000 abstract description 18
- 235000019580 granularity Nutrition 0.000 description 20
- 238000004590 computer program Methods 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229920001971 elastomer Polymers 0.000 description 1
- 239000000806 elastomer Substances 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0604—Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time
-
- 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/34—Browsing; Visualisation therefor
- G06F16/345—Summarisation for human users
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
- H04L41/064—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis involving time analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
- H04L41/065—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis involving logical or physical relationship, e.g. grouping and hierarchies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0677—Localisation of faults
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Environmental & Geological Engineering (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供一种日志监控方法、电子设备及可读存储介质,该日志监控方法包括:获取微服务在预设时间段内且具有预定级别的日志,预定级别的日志包括异常堆栈信息和日志文本;从异常堆栈信息提取表示异常类别的信息;从日志文本提取文本摘要;以及基于表示异常类别的信息和文本摘要对所述日志进行监控。本申请的日志监控方法可通过统一的日志提取规则,得到统一格式的日志数据,当出现异常时,快速统计和分析异常情况。
Description
技术领域
本申请涉及计算机技术领域,更具体地,涉及日志监控方法、电子设备及可读存储介质。
背景技术
随着网络业务复杂度和全球化的高速发展,现有软件系统的部署方式和监控方式面临挑战,以微服务为代表的服务架构成为一种新趋势。
微服务的核心理念是细粒度模块划分、服务化接口封装、轻量级通信交互。微服务本身具有良好的扩展性,正逐渐成为构造互联网应用的主流架构。
应当理解,该背景技术部分旨在部分地为理解该技术提供有用的背景,然而,这些内容并不一定属于在本申请的申请日之前本领域技术人员已知或理解的内容。
发明内容
本申请提供一种日志监控方法,包括:获取微服务在预设时间段内且具有预定级别的日志,所述预定级别的日志包括异常堆栈信息和日志文本;从所述异常堆栈信息提取表示异常类别的信息;从所述日志文本提取文本摘要;以及基于所述表示异常类别的信息和所述文本摘要对所述日志进行监控。
在本申请的一个实施方式中,所述预定级别包括error级别。
在本申请的一个实施方式中,所述方法还包括:确定所述微服务在预设时间段内接收的请求总数;以及基于所述表示异常类别的信息确定所述预设时间段内的异常请求次数。
在本申请的一个实施方式中,对所述日志进行监控包括:响应于确定出的所述异常请求次数与所述请求总数的比值大于预设阈值,发送告警提醒。
在本申请的一个实施方式中,从所述异常堆栈信息提取表示异常类别的信息包括:通过正则规则从所述异常堆栈信息中提取表示异常类别的信息;以及根据所述异常类别,去除所述日志中的重复日志。
在本申请的一个实施方式中,所述监控粒度包括服务名、接口地址、方法名、接口响应code码或接口响应时间的至少之一,基于所述表示异常类别的信息确定所述预设时间段内的异常请求次数还包括:从所述表示异常类别的信息中识别出所述异常类别对应的监控粒度;以及确定在所述预设时间段内与各个所述监控粒度对应的异常请求次数。
在本申请的一个实施方式中,从所述日志文本提取文本摘要包括:
去除所述日志文本的预设格式的字符;以及响应于所述日志文本包括汉字字符,提取所述日志文本的汉字字符。
在本申请的一个实施方式中,从所述日志文本提取文本摘要包括:
去除所述日志文本的预设格式的字符;以及响应于所述日志文本仅包括英文字符,截取所述英文字符。
在本申请的一个实施方式中,所述方法还包括:将所述表示异常类别的信息及其对应的同一请求的调用链路的日志作为核心日志存储。
在本申请的一个实施方式中,所述方法还包括:基于重要性权重确定所述核心日志的数据类型;以及根据所述数据类型确定所述核心日志的存储方式和存储位置中的至少之一。
在本申请的一个实施方式中,所述方法还包括:所述基于重要性权重确定所述核心日志的所述数据类型包括:根据所述核心日志的数据产生时间、日志级别和用户自定义日志中的至少一个,计算所述核心日志的重要性权重;以及基于所述重要性权重将所述核心日志确定为热数据、温数据或冷数据。
本申请的另一方面提供一种电子设备,包括:存储器,用于存储计算机指令;以及处理器,用于与所述存储器通信以执行所述计算机指令,从而实现上述任一项所述方法。
本申请的再一方面提供一种可读存储介质,所述可读存储介质中存储有计算机指令,所述计算机指令被处理器执行时实现上述任一项所述方法。
本申请的日志监控方法可通过统一的日志提取规则,得到统一格式的日志数据,当出现异常时,快速统计和分析异常情况。
附图说明
通过阅读参照以下附图所作的对非限制性实施方式的详细描述,本申请的其它特征、目的和优点将会变得更明显。其中:
图1为根据本申请实施方式的日志监控方法的流程图;
图2为根据本申请实施方式的日志监控方法中的监控数据标识示意图;
图3为根据本申请实施方式的日志监控装置的示意图;
图4为根据本申请实施方式的日志监控方法的电子设备框图。
具体实施方式
下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施方式,都属于本申请保护的范围。
需要说明的是,本申请所描述的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施方式能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤的过程、方法、产品不必限于清楚地列出的那些步骤或产品的单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品固有的其它步骤或单元。
如前所述,微服务是一种广泛使用的服务架构,不同的微服务通常有不同的技术栈,技术栈包括数据库和数据模型。庞大复杂的系统运行中各微服务生成大量的日志。
研究人员发现,一方面,不同技术栈的微服务的日志输出的格式不同,收集后不便于统一处理、排查问题。一般只能通过用户、测试等员使用系统过程中发现问题并反馈,运维或开发人员再通过日志定位问题。因此,发现微服务问题效率较低,速度较慢。
另一方面,数据库中存储了大量的微服务产生的日志,每天量级可达到T级,而数据库的存储空间有限。
本申请实施方式提出一种日志监控方法以应对上述至少一个问题,图1示出了根据本申请实施方式的日志监控方法200的流程图。如图1所示,日志监控方法200可包括:
S210:获取微服务在预设时间段内且具有预定级别的日志,预定级别的日志包括异常堆栈信息和日志文本;
S220:从异常堆栈信息提取表示异常类别(exception_type)的信息;
S230:从日志文本提取文本摘要;
S240:基于表示异常类别的信息和文本摘要对日志进行监控。需要说明的是,本申请实施方式列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际操作中,可以按照本申请实施方式的方法顺序执行或者并行执行。在一些实施方式中,日志监控方法200中示出的步骤不是详尽的,还可在所描述的方法之前、之后或之间执行其他的步骤,本申请对此不做限定。
下面结合图1-图4详细描述本申请的日志监控方法200。如图1所示,方法200开始于步骤S210,在步骤S210中,可获取微服务在预设时间段内且具有预定级别的日志,预定级别的日志包括异常堆栈信息和日志文本。
具体来说,一个调用请求可发起多层的多个微服务调用,每个微服务提供都产生一个监控数据标识,监控数据标识的结构如图2所示。在图2所示的示例中,每个监控数据标识包括TraceId和spanld,同一调用请求的多层微服务可具有相同的Traceld,例如第一层微服务A和第二层微服务B、C、D以及第三层微服务E、F可具有相同的TraceId(例如oa1234),以用于串联起来整个调用请求。因此可以通过TraceId获取同一调用请求的所有日志。当发生异常请求时,可获取该同一异常调用请求的所有链路的日志进行存储以便后续的问题排查和分析。此外,在同一调用请求链路中,不同的微服务具有不同的spanld,该spanld可作为每个微服务的唯一标识。
在一些示例中,可通过Log4j2服务端配置预定级别的日志,Log4j2配置的日志可具有多个日志级别,日志级别可包括ALL、DEBUG、INFO、WARN、ERROR、FATAL、OFF等。可根据需要打印预定级别的日志,以WARN或ERROR等级别的日志为例,打印出的该些级别的日志文件可包括由于对微服务的异常访问请求产生的异常堆栈信息,异常堆栈信息包括了表示异常类别的信息,基于该表示异常类别的信息,可定位异常产生的原因。
上述预定级别的日志还可包括日志文本,日志文本描述了基于访问请求的事件信息,事件信息例如包括:时间、日期、使用者及操作。可通过对日志文本的分析和检测记录微服务的运行状态。
再次参考图1,方法200继续至步骤S220,在步骤S220中,可从异常堆栈信息提取表示异常类别的信息。
以提取error级别的日志为例,可通过正则规则从异常堆栈信息中提取表示异常类别的信息。相关技术中,正则规则也称为正则表达式规则,是一种基于正则表达式所设立的过滤或者匹配规则,其中正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。
通常情况下,表示异常类别的信息可包括异常类别、异常类别所属的类、父类以及行等信息,同一异常请求下的每个微服务生成的异常堆栈信息包括大量重复的信息。可选地,可根据异常类别所属的类、父类、行(line)、对日志进行去重处理,以便于统计分析。
在另一些示例中,异常堆栈信息中包含异常类别的信息往往仅仅位于异常堆栈信息的前两行,例如,该前两行信息可包括系统识别的异常类别(Service Exception)、开发人员自定义的异常原因(例如,输入参数有误,查询不到对应的账号)、异常发生的位置(例如,ServiceListService.java:262)以及异常类别下的类及原因(例如,findServiceByRoleWithOld)等信息。因此,可对异常堆栈信息进行截取,例如截取前两行,以进行存储和分析。在一些示例中,还可将表示异常类别的信息对应的同一请求的调用链路的日志作为核心日志存储。
在一些示例中,可在提取出异常堆栈信息中的前两行信息之后,通过正则规则从该两行信息中提取表示异常类别的信息。可选地,可通过正则规则提取上述表示异常类别的信息,例如,可通过换行符"\n"对该前两行信息进行分割,作为一个选择,可在分割后抽取出第一个和第二个元素为第一行提取信息和第二行提取信息。
可选地,对于第一行提取信息,可分别提取出系统识别的异常类别以及开发人员自定义的异常原因。示例性地,可对第一行的提取信息进行进一步的分割,例如使用“:”对第一行的提取信息进行进一步的分割,并在分割后抽取出表示系统识别的异常类别的信息,例如,可抽取出第一个元素作为系统识别的异常类别。可选地,还可抽取出表示开发人员自定义的异常原因的信息,例如,可抽取出最后一个元素作为开发人员自定义的异常原因。
可选地,对于第二行提取信息,可进行进一步的分割,然后提取出表示异常发生的位置以及类和原因的信息,例如使用“.”进行进一步的分割,然后抽取出最后一个元素作为异常发生的位以及类和原因。
继续参考图1,方法200继续至步骤S230,在步骤S230中,可从日志文本提取文本摘要。
在一些示例中,可从上述预定级别的日志包括的日志文本提取文本摘要,通过对文本摘要的统计分析对日志进行日常监控,从而了解微服务的运行状态。
在一些情况下,为了方便问题排查,文本摘要通常包括异常请求的输入参数以及响应结果等冗余信息,当响应结果数据量非常大时,保存所有的数据将造成不必要的存储资源的占用。示例性地,可通过正则规则提取文本摘要,例如去除所述日志文本的预设格式的字符。去除上述预设格式的字符包括:提取包含statusMessage的信息,然后去除其中包括的json格式的信息。可选地,当日志文本包括汉字字符时,可进一步从包含statusMessage的信息中提取出汉字字符。在另一些示例中,当日志文本仅包括英文字符时,可对statusMessage字段的英文字符进行截取,例如可截取前100个字符。
以车辆管理的一些应用场景为例,提取的日志文本摘要可包括“输入参数有误查询不到对应账号”、“同步锁获取锁并设置超时时间”、根据设备找不到设备分组信息、“车主认证添加积分失败服务调用失败”等。
通过文本摘要的提取和表示异常类别的信息的提取,可获得高频异常日志文本排名,并且能够以可视化的形式呈现。
作为一个选择,在可视化的界面,通过点击文本摘要,能够显示该调用链路整条日志及各个微服务之间的调用关系。作为一个选择,可在可视化的界面查看各异常请求首次出现问题的时间、异常请求次数等信息。
本申请实施方式通过统一的日志提取规则,能够得到统一格式的日志数据,一方面可在出现异常时,快速统计和分析异常情况,另一方面可节省存储空间。
再次参考图1,方法200继续至步骤S240,在步骤S240中,可基于表示异常类别的信息和文本摘要对日志进行监控。
可选地,在预设时间段内,可确定微服务接收的请求总数,并基于表示异常类别的信息确定异常请求次数,例如,在对表示异常类别的信息进行去重后,统计表示异常类别的信息数量作为异常请求次数。
可选地,可将异常请求次数与请求总数进行比较,若异常请求次数与请求总数的比值大于预设阈值,预设阈值例如可设置为30%,然后,发送告警提醒。可选地,预设时间段例如包括过去的一个小时或过去的一天等。
作为一个选择,可经过日志分析系统统计和记录异常请求次数作为错误日志的数据数量,然后统计请求总数作为日志的总数据量,可通过计算错误日志的数据量与日志的总数据量的比值作为错误比率,当超出预设的错误率后,日志分析系统可报警,并且能够通过短信等方式自动通知运维人员,方便运维人员快速了解、排查和解决问题。
在一些示例中,存储企业微服务的数据库例如包括ES(Elasticsearch)数据库。Elasticsearch数据库可作为一个实时的分布式搜索和分析引擎,其数据逻辑组织方式类似于关系型数据库。例如Elasticsearch会对数据进行索引(index),每个索引下都有类型(type),每个类型都有对应的mapping。Elasticsearch数据库提供了特定的数据查询API接口(例如RESTful API或Javaclient API)。因此,可通过API接口定时和实时查询接收到的请求总次数、异常请求次数及其变化趋势,并计算和昨日、上周等的对比等。
在一些实施方式中,可按照服务名、接口地址、方法名、接口响应code码以及接口响应时间等监控粒度分类统计异常请求数。可选地,可从表示异常类别的信息中识别出异常类别对应的监控粒度,并且确定在预设时间段内与各个监控粒度对应的异常请求次数。在一些示例中,提取出的表示异常类别的信息例如包括{ServiceException:输入参数有误,查询不到对应账号},可确定该异常类别对应服务名这一个监控粒度,在对表示异常类别的信息进行去重后,可统计{ServiceException:输入参数有误,查询不到对应账号}出现的次数作为该监控粒度的异常请求次数,将该监控粒度的异常请求数与该监控粒度的请求数进行比较,以得到服务名错误率,从而对日志进行细粒度的监控。
在一些示例中,还可可根据接口地址这一监控粒度统计该监控粒度下的异常请求数量,并与接口地址的请求数比较,得到接口错误率;示例性的,可根据方法名筛选错误日志数量得到方法错误率;示例性的,可根据接口响应code码筛选非成功的响应码数量得到接口业务错误率;示例性的,可根据接口响应时间筛选大于预设秒数的数据得到请求超时数量。
在一些示例中,当上述各监控粒度下的错误率大于对应的参考值时,可发送告警提醒。
在一些应用场景中,例如,在一些时刻,微服务A的bb接口(例如,http接口)发生报错,可分析过去1小时内A微服务的bb接口的错误率是否超过阈值,若超过阈值,可短信提醒运维人员该些时刻的A服务异常。作为一个选择,还可对A微服务的bb接口异常订阅警报,即在下次错误日志数据收集时,若发生同类问题且次数超过设定阈值,会进行消息推送提醒。
在一些实施方式中,本申请的日志监控方法还包括存储核心日志数据,例如上述表示异常类别的信息及其对应的同一调用请求的所有调用链路的日志可作为核心日志进行存储。
当服务器的存储资源有限时,可对存储的核心日志进行重要性评估,基于重要性的不同得到不同的数据类型。作为一个选择,可基于重要性权重确定上述核心日志的数据类型;以及根据其数据类型动态调整核心日志数据的存储方式或根据数据类型动态调整核心日志数据的存储位置。在一些示例中,上述根据重要性权重确定核心日志的数据类型包括:基于核心日志的数据产生的时间、日志级别或用户自定义日志中的至少一个,计算核心日志的重要性权重;以及根据计算的重要性权重将核心日志的数据类型确定为热数据、温数据或冷数据,不同的重要性权重代表不同的数据类型。
如式(1)所示,重要性权重(important)主要由时效性(days,也可称为数据产生时间)、日志级别(levels)、用户自定义(customize)三个因素决定,α1、α2和α3分别代表时效性、日志级别和用户自定义的权重,例如可分别为冷数据、温数据和热数据的重要性权重设定分界线阈值,作为一个选择,热数据的重要性权重可依次大于温数据和冷数据。通过动态调整α1、α2和α3可对核心日志的数据类型定期调整,核心日志可在上述分界线阈值内进行数据类型的转化,基于动态转化的数据类型可动态调整数据的存储方式或数据存储位置。
important=αldays+α2level+α3customize (1)
可选地,也可同时调整数据的存储方式和存储位置,例如,可将冷数据从存储的数据库移出,以例如excel、txt或.sql等文件形式保存到硬盘中。
在一些实施方式中,可通过日志的查询频率等特性选择相应的存储方式,例如查询频率低的核心日志从存储的数据库移出,以例如excel、txt或.sql等文件形式保存到硬盘中,从而提高存储空间的利用率。
本申请实施方式提供的日志监控方法,一方面,通过将表示异常类别的信息的同一调用请求的所有调用链路的日志作为核心日志进行存储,便于后续出现异常时通过分析比对,快速确定异常原因。另一方面,通过对核心日志进行分类存储,可以提高存储空间的利用率。
如图3所示,本申请实施方式还提供一种日志监控装置400,装置400包括为实施上述方法和搭载下述实施本申请方法的程序代码的程序模块构架。
在一些实施方式中,装置400包括:获取模块410,用于获取微服务在预设时间段内且具有预定级别的日志,预定级别的日志包括异常堆栈信息和日志文本;第一提取模块420,用于从异常堆栈信息提取表示异常类别的信息;第二提取模块430,用于从日志文本提取文本摘要;监控模块440,用于基于表示异常类别的信息和文本摘要对日志进行监控。
在一些示例中,第一提取模块420可包括第一提取单元421,用于通过正则规则从异常堆栈信息中提取表示异常类别的信息;去重单元422,用于根据异常类别去除所述日志中的重复日志。
在一些示例中,第二提取模块430可包括格式去除单元431,用于去除日志文本的预设格式的字符;以及第二提取单元432,用于在日志文本包括汉字字符时,提取日志文本的汉字字符。可选地,第二提取模块430还可包括第三提取单元433,用于在日志文本仅包括英文字符时,截取英文字符。
在一些实施方式中,监控模块440包括:请求总数确定单元441,用于统计微服务在预设时间段内接收的日志请求总数;异常请求统计单元442,基于表示异常类别的信息确定预设时间段内的异常请求次数,以对日志进行监控;告警单元443,用于在异常请求次数与请求总数的比值大于预设阈值时,发送告警提醒。
示例性的,异常请求统计单元442包括:识别监控粒度子单元444用于从表示异常类别的信息中识别出异常类别对应的监控粒度,其中,监控粒度包括服务名、接口地址、方法名、接口响应code码或接口响应时间的至少之一;异常请求统计子单元445,用于确定在所述预设时间段内与各个所述监控粒度对应的异常请求次数。作为一个示例,当各监控粒度对应的异常请求数与各监控粒度的请求数的比值大于参考值时,可通过告警单元443发送告警提醒。
在一些示例中,装置400还可包括:存储模块450,用于将第一提取模块420提取的表示异常类别的信息及其对应的同一请求的调用链路的日志作为核心日志存储。
在一些示例中,装置400还可包括:数据类型确认模块460,基于重要性权重确定核心日志的数据类型,根据数据类型确定核心日志的存储方式和存储位置中的至少之一。可根据确认的数据类型将核心日志以不同的存储方式在存储模块450进行存储。作为一个选择,还可根据确认的数据类型将核心日志分类存储在存储模块450的不同存储位置。
在一些示例中,数据类型确认模块460包括重要性权重计算单元461,用于根据核心日志的数据产生时间、日志级别和用户自定义日志中的至少一个,计算核心日志的重要性权重;以及数据类型确认单元472,用于基于重要性权重将核心日志确定为热数据、温数据或冷数据。
本申请实施方式还提供了一种日志的电子设备和可读存储介质。图4示出了根据本申请实施方式的日志监控方法的电子设备600的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图4所示,电子设备600包括处理器601,其可以根据存储在只读存储器(ROM)602中的计算机程序或者从存储器608加载到随机访问存储器(RAM)603中的计算机程序,来执行各种适当的动作和处理。在RAM 603中,还可存储电子设备600操作所需的各种程序和数据。处理器601、ROM 602以及RAM 603通过总线604彼此相连。I/O接口(输入/输出接口)605也连接至总线604。
在一些实施方式中,若需要,可以将多个处理器601和/或多条总线604与多个存储器608一起使用。同样,可以连接多个电子设备600,各个电子设备600提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。
电子设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储器608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器601可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器601的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器601执行上文所描述的各个方法,例如日志监控方法。例如,在一些实施方式中,日志监控方法可被实现为计算机软件程序,其被有形地包含于可读存储介质,例如存储器608。在一些实施方式中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到电子设备600上。当计算机程序加载到RAM 603并由处理器601执行时,可以执行上文描述的日志监控方法的一个或多个步骤。备选地,在其他实施方式中,处理器601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行日志监控方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本申请的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。上述程序代码可以封装成计算机程序产品。这些程序代码或计算机程序产品可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器601执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本申请的上下文中,可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。可读存储介质可以是机器可读信号存储介质。可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学存储设备、磁存储设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务(“Virtual Private Server”,或简称“VPS”)中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以是分布式系统的服务器,或者是结合了区块链的服务器。
如上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明。应理解的是,以上所述仅为本申请的具体实施方式,并不用于限制本申请。凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等均应包含在本申请的保护范围之内。
Claims (13)
1.日志监控方法,包括:
获取微服务在预设时间段内且具有预定级别的日志,所述预定级别的日志包括异常堆栈信息和日志文本;
从所述异常堆栈信息提取表示异常类别的信息;
从所述日志文本提取文本摘要;以及
基于所述表示异常类别的信息和所述文本摘要对所述日志进行监控。
2.根据权利要求1所述的方法,其中,所述预定级别包括error级别。
3.根据权利要求1所述的方法,对所述日志进行监控包括:
确定所述微服务在预设时间段内接收的请求总数;以及
基于所述表示异常类别的信息确定所述预设时间段内的异常请求次数。
4.根据权利要求3所述的方法,其中,对所述日志进行监控包括:
响应于确定出的所述异常请求次数与所述请求总数的比值大于预设阈值,发送告警提醒。
5.根据权利要求3所述的方法,其中,所述监控粒度包括服务名、接口地址、方法名、接口响应code码或接口响应时间的至少之一,基于所述表示异常类别的信息确定所述预设时间段内的异常请求次数还包括:
从所述表示异常类别的信息中识别出所述异常类别对应的监控粒度;以及
确定在所述预设时间段内与各个所述监控粒度对应的异常请求次数。
6.根据权利要求1所述的方法,从所述异常堆栈信息提取表示异常类别的信息包括:
通过正则规则从所述异常堆栈信息中提取表示异常类别的信息;以及
根据所述异常类别,去除所述日志中的重复日志。
7.根据权利要求1所述方法,从所述日志文本提取文本摘要包括:
去除所述日志文本的预设格式的字符;以及
响应于所述日志文本包括汉字字符,提取所述日志文本的汉字字符。
8.根据权利要求1所述的方法,从所述日志文本提取文本摘要包括:
去除所述日志文本的预设格式的字符;以及
响应于所述日志文本仅包括英文字符,截取所述英文字符。
9.根据权利要求1所述的方法,其中,所述方法还包括:
将所述表示异常类别的信息及其对应的同一请求的调用链路的日志作为核心日志存储。
10.根据权利要求9所述的方法,其中,所述方法还包括:
基于重要性权重确定所述核心日志的数据类型;以及
根据所述数据类型确定所述核心日志的存储方式和存储位置中的至少之一。
11.根据权利要求10所述的方法,其中,所述基于重要性权重确定所述核心日志的所述数据类型包括:
根据所述核心日志的数据产生时间、日志级别和用户自定义日志中的至少一个,计算所述核心日志的重要性权重;以及
基于所述重要性权重将所述核心日志确定为热数据、温数据或冷数据。
12.一种电子设备,包括:
存储器,用于存储计算机指令;以及
处理器,用于与所述存储器通信以执行所述计算机指令,从而实现如权利要求1-11中任一项所述方法。
13.一种可读存储介质,所述可读存储介质中存储有计算机指令,所述计算机指令被处理器执行时实现如权利要求1-11中任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111610630.7A CN116366420A (zh) | 2021-12-27 | 2021-12-27 | 日志监控方法、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111610630.7A CN116366420A (zh) | 2021-12-27 | 2021-12-27 | 日志监控方法、电子设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116366420A true CN116366420A (zh) | 2023-06-30 |
Family
ID=86910291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111610630.7A Pending CN116366420A (zh) | 2021-12-27 | 2021-12-27 | 日志监控方法、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116366420A (zh) |
-
2021
- 2021-12-27 CN CN202111610630.7A patent/CN116366420A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4099170B1 (en) | Method and apparatus of auditing log, electronic device, and medium | |
WO2021068547A1 (zh) | 日志模板提取方法及装置 | |
US20200348995A1 (en) | Fault analysis and prediction using empirical architecture analytics | |
CN111339175B (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
CN112311617A (zh) | 一种配置化数据监控告警方法及系统 | |
CN112308126A (zh) | 故障识别模型训练方法、故障识别方法、装置及电子设备 | |
CN111881011A (zh) | 日志管理方法、平台、服务器及存储介质 | |
CN111651595A (zh) | 一种异常日志处理方法及装置 | |
CN111240876A (zh) | 微服务的故障定位方法、装置、存储介质及终端 | |
CN113760677A (zh) | 异常链路分析方法、装置、设备及存储介质 | |
CN109753490A (zh) | 基于漏洞修复的数据库优化方法、系统、设备及介质 | |
CN112560465A (zh) | 批量异常事件的监控方法、装置、电子设备及存储介质 | |
CN113987086A (zh) | 数据处理方法、数据处理装置、电子设备以及存储介质 | |
CN116471174B (zh) | 一种日志数据监测系统、方法、装置和存储介质 | |
US11838171B2 (en) | Proactive network application problem log analyzer | |
CN116366420A (zh) | 日志监控方法、电子设备及可读存储介质 | |
CN115426287A (zh) | 一种系统监控和优化方法、装置、电子设备及介质 | |
CN114637685A (zh) | 银行系统中应用程序的性能测试方法、装置、设备和介质 | |
CN114706893A (zh) | 故障检测方法、装置、设备及存储介质 | |
CN114385498A (zh) | 性能测试方法、系统、计算机设备及可读存储介质 | |
CN114064757A (zh) | 应用程序的优化方法、装置、设备及介质 | |
CN114281549A (zh) | 数据的处理方法及装置 | |
CN114282603A (zh) | 一种告警信息聚类方法、装置及存储介质 | |
CN111835566A (zh) | 一种系统故障管理方法、装置及系统 | |
CN112148491B (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 |