日志监控方法、系统、装置和存储介质与流程

文档序号:22344421发布日期:2020-09-25 18:16阅读:124来源:国知局
日志监控方法、系统、装置和存储介质与流程

本发明涉及通信领域,更为具体而言,涉及一种适用于分布式系统的日志监控方法、系统、装置和存储介质。



背景技术:

随着应用系统数量和规模的扩展,对应用日志的采集、解析、存储、分析和告警是大型企业尤其是银行业交易系统不可或缺的监控业务。目前,对于日志数据的监控,往往采用全量采集的方式进行采集、解析和存储,进行分析后生成告警并通过邮件与短信的形式发送给用户。

但是,此方法对日志的采集缺乏规则配置,全量采集的模式对日志的采集、存储和解析均造成了资源上的浪费。同时,现有技术中针对日志数据中异常事件进行匹配并告警机制并不够完善,缺少对告警事件的压制和清除策略,由此,会产生很多冗余的告警事件和短信,并存在一定的误报率。



技术实现要素:

为了解决现有技术中存在的上述问题,本发明提供了一种日志监控方法、系统、装置和存储介质,实现针对有价值的日志数据进行采集,并对生成的告警进行压制和清除。

根据本发明的第一方面,本发明的实施方式提供了一种日志监控方法,所述监控方法包括:根据预设的采集规则采集应用系统的日志数据;根据预设的解析规则解析所述日志数据;将解析后的所述日志数据与预设的告警策略进行匹配,根据匹配结果生成告警事件;将所述告警事件与预设的压制和清除策略进行匹配,若匹配成功,则存储所述告警事件并发送给用户。

在本发明的一些实施方式中,所述根据预设的采集规则采集应用系统的日志数据包括:轮询日志目录,标记所述日志目录中日志名称满足采集配置文件要求的日志数据作为第一数据;轮询所述第一数据,标记所述第一数据中文件名时间戳和最后修改时间数据满足所述采集配置文件要求的日志数据作为第二数据;采集所述第二数据。

在本发明的一些实施方式中,所述将解析后的所述日志数据与预设的告警策略进行匹配,根据匹配结果生成告警事件包括:根据所述日志数据从所述告警策略中匹配对应的门限规则;根据所述门限规则的阈值对所述日志数据进行告警判断;若判断结果为需要告警,则生成所述告警事件。

在本发明的一些实施方式中,若从所述告警策略中未匹配到对应的门限规则,则结束对所述日志数据的处理。

在本发明的一些实施方式中,所述将所述告警事件与预设的压制和清除策略进行匹配,若匹配成功,则存储所述告警事件并发送给用户包括:读取所述告警事件的次数数据,与所述压制和清除策略中的压制次数进行对比;若所述次数数据大于所述压制次数,则存储所述告警事件并发送给用户;否则,清除所述告警事件。

根据本发明的第二方面,本发明的实施方式提供了一种日志监控系统,所述监控系统包括:采集模块,用于根据预设的采集规则采集应用系统的日志数据;解析模块,用于根据预设的解析规则解析所述日志数据;告警模块,用于将解析后的所述日志数据与预设的告警策略进行匹配,根据匹配结果生成告警事件;压制与清除模块,用于将所述告警事件与预设的压制和清除策略进行匹配,若匹配成功,则存储所述告警事件并发送给用户。

在本发明的一些实施方式中,所述采集模块用于:轮询日志目录,标记所述日志目录中日志名称满足采集配置文件要求的日志数据作为第一数据;轮询所述第一数据,标记所述第一数据中文件名时间戳和最后修改时间数据满足所述采集配置文件要求的日志数据作为第二数据;采集所述第二数据。

在本发明的一些实施方式中,所述告警模块用于:根据所述日志数据从所述告警策略中匹配对应的门限规则;根据所述门限规则的阈值对所述日志数据进行告警判断;若判断结果为需要告警,则生成所述告警事件。

在本发明的一些实施方式中,若从所述告警策略中未匹配到对应的门限规则,则结束对所述日志数据的处理。

在本发明的一些实施方式中,所述压制和清除模块用于:读取所述告警事件的次数数据,与所述压制和清除策略中的压制次数进行对比;若所述次数数据大于所述压制次数,则存储所述告警事件并发送给用户;否则,清除所述告警事件。

根据本发明的第三方面,本发明的实施方式提供了一种日志监控装置,包括存储器和处理器,所述存储器用于存储计算机可读指令;所述处理器用于执行所述计算机可读指令从而实现前述任一项实施方式所述的方法。

根据本发明的第四方面,本发明的实施方式还提供了一种计算机存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现前述任一项实施方式所述的方法。

本发明通过对采集、解析过程进行规则配置从而实现从海量日志数据中精准的采集、解析出有价值的日志数据,避免了成本的浪费。同时,通过对生成的告警事件进行压制和清除,减少了冗余的告警事件和短信的产生,并降低误报率。

附图说明

图1是根据本发明一种实施方式的日志监控方法的流程示意图;

图2是图1中处理100的流程示意图;

图3是图1中处理102的流程示意图;

图4是图1中处理103的流程示意图;

图5是根据本发明一种实施方式的日志监控系统的框图。

具体实施方式

以下结合附图和具体实施方式对本发明的各个方面进行详细阐述。其中,众所周知的模块、单元及其相互之间的连接、链接、通信或操作没有示出或未作详细说明。并且,所描述的特征、架构或功能可在一个或一个以上实施方式中以任何方式组合。本领域技术人员应当理解,下述的各种实施方式只用于举例说明,而非用于限制本发明的保护范围。还可以容易理解,本文所述和附图所示的各实施方式中的模块或单元或处理方式可以按各种不同配置进行组合和设计。

本发明的一种实施方式提供了一种日志监控方法,如图1所示,在本发明的实施方式中,该方法包括:

100:根据预设的采集规则采集应用系统的日志数据;

101:根据预设的解析规则解析日志数据;

102:将解析后的日志数据与预设的告警策略进行匹配,根据匹配结果生成告警事件;

103:将告警事件与预设的压制和清除策略进行匹配,若匹配成功,则存储告警事件并发送给用户。

在本实施方式中,上述方法可以应用于分布式系统中,通过在被纳管的主机上安装采集代理来采集日志数据,从而实现分布式系统的日志数据统一采集。其中,采集规则可以存储在采集代理中也可以存储在被纳管的主机上。采集代理按照采集规则的设置从而实现对日志数据的增量或者全量、分钟或者秒级、按文件大小或者文件数量和按删除或者不删除等方式的采集。从而针对有需求的或者有价值的日志数据进行采集,减少对采集成本的浪费。

在可选的实施方式中,采集代理在采集以前,还可以请求获取待采集的用用组件的应用组件锁。在请求应用组件锁的时候,如果所有应用组件已经循环处理完毕,则需要等待所有任务处理完成后再进行下一次循环。

在本发明的一种实施方式中,提供了一种实现处理100的方法,如图2所示,该方法包括:

104:轮询日志目录,标记日志目录中日志名称满足采集配置文件要求的日志数据作为第一数据;

105:轮询第一数据,标记第一数据中文件名时间戳和最后修改时间数据满足采集配置文件要求的日志数据作为第二数据;

106:采集所述第二数据。

在本实施方式中,采集规则以采集配置文件的形式记录了对被采集的日志数据的要求,部分参数如下表所示。

表1

在本实施方式中,采集配置文件的参数包括:文件名关键字、文件名时间戳范围和最后修改时间范围。

由此,在本实施方式中,采集过程如下:

定时轮询日志目录,标记日志目录中文件名包含文件名关键字的日志数据,作为第一数据。轮询第一数据,读取其文件名时间戳和最后修改时间判断是否在文件名时间戳范围和最后修改时间范围中,若在,则对其进行采集。

在本实施方式中,采集完毕后,采集代理将采集结果封装成flume事件,将flume事件放入发送队列,等待发送。在发送过程中,定时从发送队列中取出flume事件,根据采集配置文件的参数随机选择一个接收端进行发送,如果这个接收端发送失败,则选取另一个接收端进行尝试。如果所有接收端都尝试失败,则将此事件暂存在堆积事件队列中,当接收端可用时再进行发送。若堆积事件队列已满,则丢弃堆积事件队列中入队时间最早的flume事件后再存入。

在本发明的一种实施方式中,获取到采集的日志数据后,根据预配置的日志解析规则对日志数据进行提取、解析和数据过滤,根据需要进行日志存储。由此,进一步的对日志进行筛选,以减少存储及后续分析处理的成本的浪费。

在可选的实施方式中,还可以设置超时监控,当对某一个应用组件的日志数据进行采集、解析和存储的时间超过预设的处理时间时,触发超时处理。预设的处理时间可以由采集配置文件中的超时参数控制,默认为30s。

在可选的实施方式中,本发明所提供的上述采集及解析的处理方式可以采用线程池并发处理,每个线程负责处理一个应用组件下多个ap日志数据。线程池的大小心可以由采集配置文件中的线程并发数控制,默认值为50。

在可选的实施方式中,还可以设置扫描处理,在解析处理过程中,每间隔一定时间扫描一次文件列表,由此,保证在规定时间内没有遗漏的日志数据。扫描间隔时间可以由采集配置文件中的扫描间隔参数控制,默认值为5000ms。

在解析完成后,需要将解析后的日志数据与预设的告警策略进行匹配,根据匹配结果生成告警事件。由此,在本发明的一种实施方式中,提供了一种实现处理102的方法,如图3所示,该方法包括:

107:根据日志数据从告警策略中匹配对应的门限规则;

108:根据门限规则的阈值判断日志数据是否需要告警,若是,则执行处理109;

109:生成告警事件。

在本实施方式中,根据日志数据从告警策略中匹配对应的门限规则列表,在从该门限规则列表中读取门限匹配规则。首先读取监控对象级别的门限规则;如果该监控对象级别的门限规则不存在,则读取类定义级别的门限规则;如果类定义级别的门限规则也不存在,则读取组件级别的门限规则。如果最后组件级别的门限规则都不存在,则结束对当前日志数据的处理,并开始处理下一条数据。

为了避免产生大量的告警事件和短信,同时减低误报率,需要对生成的告警事件进行压制和清除。对此,在本发明的一种实施方式中,提供了一种实现处理103的方法,如图4所示,该方法包括:

110:读取所述告警事件的次数数据;

111:判断次数数据是否大于压制和清除策略中的压制次数,若大于,则执行处理112,否则,执行处理113;

112:储存告警事件并发送给用户;

113:清除告警事件。

在本实施方式中,若告警事件未被压制,可以通过添加到上传队列的方式进行存储及发送给用户。

在可选的实施方式中,还可以通过记录标识的方式实现压制和清除。例如,对于某一个告警事件,告警一次就记录一个标识1,不告警就会记录一个标识0,如果配置的压制次数为3次,当该告警事件的标识累积为1111时,意味着当前时第4次告警,此时,储存告警事件并发送给用户,而前3次的告警则被压制。

综上所述,本发明通过对采集、解析过程进行规则配置从而实现从海量日志数据中精准的采集、解析出有价值的日志数据,避免了成本的浪费。同时,通过对生成的告警事件进行压制和清除,减少了冗余的告警事件和短信的产生,并降低误报率。

图5是根据本发明一种实施方式的日志监控系统1的框图,参照图5,该监控系统1包括:采集模块11,用于根据预设的采集规则采集应用系统的日志数据;解析模块12,用于根据预设的解析规则解析日志数据;告警模块13,用于将解析后的日志数据与预设的告警策略进行匹配,根据匹配结果生成告警事件;压制与清除模块14,用于将告警事件与预设的压制和清除策略进行匹配,若匹配成功,则存储告警事件并发送给用户。

在本发明的实施方式中,采集模块11用于:轮询日志目录,标记日志目录中日志名称满足采集配置文件要求的日志数据作为第一数据;轮询第一数据,标记第一数据中文件名时间戳和最后修改时间数据满足采集配置文件要求的日志数据作为第二数据;采集第二数据。

在本发明的实施方式中,告警模块13用于:根据日志数据从告警策略中匹配对应的门限规则;根据门限规则的阈值对日志数据进行告警判断;若判断结果为需要告警,则生成告警事件。

在本发明的实施方式中,若从告警策略中未匹配到对应的门限规则,则结束对日志数据的处理。

在本发明的实施方式中,压制和清除模块14用于:读取告警事件的次数数据,与压制和清除策略中的压制次数进行对比;若次数数据大于压制次数,则存储告警事件并发送给用户;否则,清除告警事件。。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件结合硬件平台的方式来实现。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施方式或者实施方式的某些部分所述的方法。

因此,本发明实施方式还提供了一种计算机存储介质,存储有计算机程序,用于在执行时实现本发明前述实施方式或实现方式提供的日志监控方法。例如,所述存储介质可以包括硬盘、软盘、光盘、磁带、磁盘、优盘、闪存等。

本发明实施方式还提供了一种日志监控装置,该装置包括存储器,用于存储计算机可读指令;处理器,用于执行该计算机可读指令从而实现本发明前述实施方式或实现方式所提供的日志监控方法。可选地,在本发明实施方式的一种实现方式中,所述装置还可以包括用于进行数据通信的输入输出接口。例如,所述装置可以是计算机、智能终端、服务器等。

本文所公开的具体实施方式仅用于举例说明本发明,对于本领域技术人员而言,显然可以根据本文的教导进行各种修改,可以采用各种等同的方式实施本发明,因此,本发明上述公开的特定的实施方式仅仅是示例性的,其保护范围不受在此公开的结构或设计的细节所限,除非在权利要求中另有说明。因此,上述公开的特定的示例性的实施方式可进行各种替换、组合或修改,其所有的变形都落入本文公开的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1