CN105183609B - 一种应用于软件系统的实时监控系统及方法 - Google Patents
一种应用于软件系统的实时监控系统及方法 Download PDFInfo
- Publication number
- CN105183609B CN105183609B CN201510590307.6A CN201510590307A CN105183609B CN 105183609 B CN105183609 B CN 105183609B CN 201510590307 A CN201510590307 A CN 201510590307A CN 105183609 B CN105183609 B CN 105183609B
- Authority
- CN
- China
- Prior art keywords
- daily record
- monitoring
- module
- alarm
- log
- 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
Landscapes
- Debugging And Monitoring (AREA)
- Telephonic Communication Services (AREA)
Abstract
一种软件系统的实时监控系统,该监控系统配置于软件系统服务器,用于收集软件系统运行产生的日志信息,包括日志采集模块、消息系统、流式计算平台、数据存储模块、报警模块、配置管理模块;所述日志采集模块:对生成的日志进行实时筛选和加工,以及将选择进行监控报警的日志传给消息系统;所述消息系统:用于接收日志采集模块发来的监控日志,按照路由规则将需监控报警的日志发送给流式计算平台;所述流式计算平台:用于以流数据处理方式逐条处理日志,根据日志报警级别判断是否需要将该异常报警情况进行记录、报警或通知给系统相关负责人;所述数据存储模块:用于对实时监控过程中产生的数据信息做持久化处理,即存入数据库或存入文件系统中。
Description
技术领域
本发明属于软件系统设计领域,具体涉及一种应用于软件系统实时监控的系统和方法。
背景技术
随着互联网的飞速发展,大型网站的软件系统规模也在快速增长。这种快速增长的软件规模和数据规模给系统监控的扩展性、实时性带来了全新的挑战。传统的系统监控方式主要通过依靠技术人员人为地为不同应用、不同机器设置来实现,这无疑增加了人员工作量,又大大降低监控的工作效率。
日志是指有关计算机系统发生的事件或操作的记录,日志可以进行查询、检索。在系统出现问题时可通过日志检索出问题发生时刻的操作,因而日志可作为一种能监控各类软件系统的普遍做法。专利“在移动设备中实现的软件监控方法和装置”(公开号:CN104598369A)公布了一种在移动设备中实现的软件监控方法和装置。该软件监控方法包括:抓取与待监控的应用软件在移动设备中的运行情况相关的软件日志信息;以及当软件日志信息中出现故障表征字段时,将在故障表征字段出现之前的预定时间段中抓取的软件日志信息发送到位于移动设备外部的用于故障信息整合的设备。该发明虽然节省了用于故障信息整合的设备在移动设备中搜集软件日志信息的时间,但它只是在故障发生时抓取一定时间段内的日志,无法保证日志收集及处理的即时性;其次日志以数据包形式通过HTTP发送,日志处理需要一个数据包解析的过程,导致处理滞后,不能及时、快速地定位异常现场。
一般来说,通过定时任务,每隔一定时间扫描软件系统产生的日志,并将其发送出去,以达到监控日志的目的。但是,这种手段的实时性并不是很好,其延时程度依赖于扫描间隔周期。而且,随着软件系统规模增长,日志规模变得更大的时候,这种方案在日志收集、汇总、报警等方面的弊端就会暴露出来,监控的实时性也将受到较大的影响。
面对服务器和网络设备大规模增长,系统运维人员需要一个能够完成对大规模网络设备、服务器、系统服务的集中统一监控系统,该系统需要具备很高的实时性、有效性与可扩展性,同时还需具有长年提供24小时监控和报警通知的能力。因而,如何在大规模软件系统的环境下,对软件系统进行实时的监控、报警,成为摆在系统设计和运维架构设计人员面前的一个新课题。
发明内容
为解决现有技术的不足,本发明目的是,提供一种软件系统的实时监控系统及方法,为软件系统的运行日志配置唯一的元信息,通过实时捕捉、筛选、处理及分析运行日志,可根据日志的元信息迅速获取异常现场数据,准确定位异常发生地及异常负责人,并按照预设异常报警机制将现场数据以邮件、短信、微信等多元通信方式及时告知异常负责人,有助于报警的定向传递,同时通过本发明,也可以实现跨机房、跨地域的实时监控;
本发明的技术方案如下:一种软件系统的实时监控系统,其特征在于,该监控系统配置于软件系统服务器,用于收集软件系统运行产生的日志信息,包括日志采集模块、消息系统、流式计算平台、数据存储模块、报警模块、配置管理模块;
所述日志采集模块:用于按照设定的日志格式实时收集软件系统的运行日志,并对生成的日志进行实时筛选和加工,以及将选择进行监控报警的日志传给消息系统;
所述消息系统:一方面用于接收日志采集模块发来的监控日志,一方面用于按照路由规则将需监控报警的日志发送给流式计算平台,或发送给另一个实时监控系统的消息系统;
所述配置管理模块:用于配置日志选择的筛选规则和加工规则、日志传输的路由规则、日志异常的报警规则、数据持久化规则、报警消息模板配置及日志产生模块的负责人配置规则;
所述流式计算平台:用于以流数据处理方式逐条处理日志,根据日志报警级别判断是否需要将该异常报警情况进行记录、报警或通知给系统相关负责人;
所述数据存储模块:用于对实时监控过程中产生的数据信息做持久化处理,即存入数据库或存入文件系统中,数据库是关系数据库或类似NoSQL类的非关系数据库;数据存储模块根据需要对部分监控日志进行持久化处理,涉及被过滤掉的日志、无需报警的日志、需要报警的日志、报警相关信息;
所述报警模块:用于控制报警消息的定向发送,按照日志产生模块的负责人配置,将有异常的日志信息通过手机短信、微信、邮件等多种渠道通知负责人;同时报警模块中内置消息模板,供报警时调用,模板中包含应用名、模块名、报警内容。
本发明监控系统可以配置于服务器集群,即监控集群服务器的若干软件系统。
本发明还提供一种软件系统实时监控的方法,具体包括:
步骤一:配置软件系统实时监控过程中的监控规则,包括路由规则、筛选规则、加工规则、报警规则及模块负责人;
由于并非所有日志都需要实时监控和做报警处理,因而在日志收集时需限定实时监控系统应按照什么标准重点收集哪类日志;路由规则规定了经过滤的日志应在本地进行处理,还是发送到异地处理;针对异常日志可能造成系统运行出现的各种轻急缓重情况,设置不同种向软件系统运维人员的报警方式,同时为避免造成报警混乱的局面,只将报警信息定向发送给出现异常的业务模块的负责人;
步骤二:设定待监控软件系统运行日志的生成格式,即监控日志;
每一条监控日志由元信息和日志正文组成,元信息用于描述监控日志,它与监控日志之间是一一对应的关系,包括机房编号、机器IP、软件系统编号、模块编号、时间戳、版本、报警等级、日志编号;
其中,机房编号用于标示待监控软件系统服务器所在的机房区域,方便异常报警时快速定位异常发生地;
机器IP用于标示待监控软件系统服务器的IP地址;
软件系统编号用于标示待监控软件系统,不同的待监控软件系统有自己唯一的编号;
模块编号用于标示软件系统的业务模块对象,不同的业务模块有唯一的编号,这样便于判断日志具体来自于待监控软件系统的哪一个功能模块;
时间戳用于标示监控日志生成的时间;
版本用于标示实时监控系统的版本,每一次监控系统的版本升级,监控日志的处理方式也会随之更新;
报警等级用于标示当前监控日志的级别,从高向低依次是FATAL、ERROR、WARN、INFO、DEBUG;
特别地,日志描述是本技术方案的基础,只有利用元信息对日志来源、级别及异常负责人统一管理,才能保证在极短的日志处理过程中实时将异常情况更具体地报告给运维人员,协助他们快速定位异常现场;
步骤三:针对正在运行的监控目标软件系统,日志采集模块按照监控日志的格式实时捕捉系统运行过程中的新增日志,根据日志级别记录监控日志的报警等级,同时按照预定规则对监控日志进行筛选和加工;
所述监控日志的筛选是根据监控需求,由运维人员自行配置,用以准备后续需要进行处理和分析的监控日志;筛选通过指定日志元信息中的属性字段实现;
监控日志的加工是根据消息系统的类型,将监控日志转换成消息系统可传输的格式;
步骤四:日志采集模块将加工完毕的监控日志传给消息系统,再经消息系统按照路由规则传至监控日志接收方;
监控日志的接收方可以是当前服务器监控系统的流式计算平台,也可以是位于其他机房的服务器监控系统内的消息系统;
监控日志接收方由配置管理模块预先设定的路由规则决定,路由规则由服务器IP地址和服务器端口号组成;这种方式有助于实现跨机房、跨地域的软件系统实时监控处理;
步骤五:流式计算平台以日志流的形式接收和解析监控日志,通过分析监控日志元信息中报警级别判定软件系统的运行状态,对于需要异常警报的日志,提取日志编号、运行的软件系统、日志产生模块及模块负责人信息;对于不需异常警报的日志,经数据存储模块对监控日志做持久化处理;
持久化的具体方式是将当前需要保存的监控日志转成相应的文件格式存入文件系统,或以表记录的形式存入数据库中,数据库可以是关系数据库,也可以是非关系数据库;
将传统的日志打包处理转变成日志流的处理模式,使监控系统面向所有即时产生的日志,保证每一条监控日志的实时传输和处理;
步骤六:针对符合异常报警特征的日志,流式计算平台按照报警级别,从报警模块中自动调用相应的报警处理方式,并根据模块负责人信息,实时发送报警异常信息;同时对所有报警信息进行持久化存储;
报警模块内配置了不同报警级别的报警方式,包括邮件、短信、微信、QQ,异常程度不同,调用的报警处理方式也会不同;
实时监控系统针对日志报警级别在ERROR以上的异常实时报告给软件系统运维人员,报警方式为:
(1)ERROR级别日志:根据日志来源信息和业务模块责任人邮件地址,发送报警邮件给模块责任人;同时将该报警信息,通过数据存储模块进行持久化存储;
(2)FATAL级别日志:选用即时通信手段报警;根据日志的来源信息和业务模块责任人手机号码、邮件地址,发送报警短信、报警邮件给模块责任人;同时将该报警信息,通过数据存储模块进行持久化存储。
针对WARN级别及其以下级别的日志,无需将报警信息发送给模块责任人,仅是按照自定义的规则进行统计、存储、可视化等处理。
本发明与现有技术相比,其有益效果:
(1)本发明以“元信息+日志正文”的格式收集监控日志,不仅方便运维人员根据需要定制待监控的系统及相关的业务模块,使监控系统有选择地采集日志,同时有利于在异常告警时能快速根据日志元信息锁定异常现场,加快异常告警响应速度;
(2)本发明以集群方式构建核心模块,通过将日志采集模块内置待监控系统的服务器中,日志传输及处理分析的功能模块内置实时监控系统中,有助于实时监控系统在面对服务器规模扩大时及时扩展日志采集及监控范围,便于实现跨机房、跨区域的日志收集、处理及告警分析,保证监控系统的扩展性;
(3)本发明通过流数据处理方式逐条处理每一条日志,改变了传统的日志打包处理方式,使监控系统面向所有即时产生的日志,保证每一条监控日志的实时传输和处理。
附图说明
图1为本发明实施例中一种软件系统实时监控系统的示意图;
图2为本发明实施例中监控系统与服务器集群的分布示意图;
图3为本发明实施例中一种软件系统实时监控方法的流程图;
图4为本发明实施例中监控日志结构的示意图;
图5为本发明实施例中监控日志内容的示意图;
图6为本发明实施例中实时监控系统在两个时间点的日志采集;
图7本发明实施例中短信警报的内容示意图;
图8为本发明实施例中跨区域的软件系统实时监控中日志流传输示意图。
具体实施例:
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
图1为本发明实施例中一种软件系统实时监控系统的结构示意图,软件系统实时监控系统配置在软件系统服务器所在的机房内,用于按照指定日志格式实时收集、筛选、传输、处理软件系统运行日志,对异常日志即时报警;具体包括日志采集模块、消息系统、流式计算平台、数据存储模块、报警模块、配置管理模块,其中日志采集模块配置于服务器内;
在同一个机房内,实时监控系统与服务器集群的配置情况,可参阅图2所示;
所述日志采集模块101,需配置于待监控系统中,用于按照设定的日志格式实时收集软件系统的运行日志,并对生成的日志进行实时筛选和加工,以及将选择进行监控报警的日志传给消息系统;
所述消息系统102,用于按照路由规则将需监控报警的日志发送给流式计算平台,或发送给另一个实时监控系统的消息系统;
所述配置管理模块103,用于配置日志选择的筛选规则和加工规则、日志传输的路由规则、日志异常的报警规则、数据持久化规则、报警消息模板配置及日志产生模块的负责人配置规则;
所述流式计算平台104,用于以流数据处理方式逐条处理日志,根据日志报警级别判断是否需要将该异常报警情况通知给系统相关负责人;
所述数据存储模块105:用于对实时监控过程中产生的数据信息做持久化处理,即存入数据库或存入文件系统中,数据库可以是关系数据库,也可以是类似NoSQL的非关系数据库;可根据需要对部分监控日志进行持久化处理,涉及被过滤掉的日志、无需报警的日志、需要报警的日志、报警相关信息;
所述报警模块106:用于控制报警消息的定向发送,按照日志产生模块的负责人配置,将有异常的日志信息通过手机短信、微信、邮件等多种渠道通知负责人;同时报警模块中内置消息模板,供报警时调用,模板中包含应用名、模块名、报警内容。
图3为本发明实施例中一种软件系统实时监控方法的流程图,该方法的思想是以“日志元信息+日志正文”的格式规范软件系统所生成的监控日志,采用日志流的形式逐条对监控日志进行实时筛选、传输和处理,通过提取日志元信息中的报警级别判断软件系统的运行状态,对于达到报警等级的日志即时告知运维人员,具体步骤包括:
步骤301:配置软件系统实时监控过程中的监控规则,包括路由规则、筛选规则、加工规则、报警规则及模块负责人;
由于并非所有日志都需要实时监控和做报警处理,因而在日志收集时需限定实时监控系统应按照什么标准重点收集哪类日志;路由规则规定了经过滤的日志应在本地进行处理,还是发送到异地处理;针对异常日志可能造成系统运行出现的各种轻急缓重情况,设置不同种向软件系统运维人员的报警方式,同时为避免造成报警混乱的局面,只将报警信息定向发送给出现异常的业务模块的负责人;
在配置筛选规则时,要根据监控日志元信息选择哪些字段作为筛选标准,一般会选择过滤掉报警级别不高的监控日志;
在配置加工规则时,要根据消息系统的传输规则,对监控日志的格式进行转换;
在配置路由规则时,由于本发明方法不仅可以适用于同机房内的日志传输,也可适用于跨机房的日志传输,在配置传输时通过设定接收方IP地址和端口号来决定日志传输去向;
在配置报警规则时,报警方式包括微信、短信、邮件等,根据异常的轻急缓重程度选择一种或组合多种来配置不同的报警级别,一般级别越高的报警选择即时通信方式;
在配置模块负责人时,根据监控日志元信息中的模块编号,为业务模块配备相应的负责人,保证业务模块出现异常时能实现定向发送告警通知;
步骤302:设定待监控软件系统运行日志的生成格式,即监控日志;
每一条监控日志由日志元信息和日志正文组成,日志元信息用于描述监控日志,它与监控日志之间是一一对应的关系,包括机房编号、机器IP、软件系统编号、模块编号、时间戳、版本、报警等级、日志编号;图4为本发明实施例中监控日志结构的示意图,监控日志保存为一种文件格式,内容可参阅图5:
其中,Log Location为机房编号,用于标示待监控软件系统服务器所在的机房区域,方便异常报警时快速定位异常发生地;
Log IP Address为机器IP,用于标示待监控软件系统服务器的IP地址;
Log Project Name为软件系统编号,用于标示待监控软件系统,不同的待监控软件系统有自己唯一的编号;
Log App Name为模块编号,用于标示软件系统的业务模块对象,不同的业务模块有唯一的编号,这样便于判断日志具体来自于待监控软件系统的哪一个功能模块;
Happen Time为时间戳,用于标示监控日志生成的时间;
版本用于标示实时监控系统的版本,每一次监控系统的版本升级,监控日志的处理方式也会随之更新;
Alarm Level为报警等级,用于标示当前监控日志的级别,从高向低依次是FATAL、ERROR、WARN、INFO、DEBUG;
特别地,日志描述是本技术方案的基础,只有利用元信息对日志来源、级别及异常负责人统一管理,才能保证在极短的日志处理过程中实时将异常情况更具体地报告给运维人员;
步骤303:针对正在运行的监控目标软件系统,日志采集模块101按照监控日志的格式实时捕捉系统运行过程中的新增日志,根据日志级别记录监控日志的报警等级,同时按照预定规则对监控日志进行筛选和加工;
步骤303-1:日志筛选
所述监控日志的筛选是根据监控需求,由运维人员自行配置,用以准备后续需要进行处理和分析的监控日志;筛选通过指定日志元信息中的属性字段实现;
筛选条件通过指定日志元信息中的属性字段实现,与指定字段内容相匹配的监控日志,作为下一阶段报警分析的内容;
筛选会按照配置的筛选条件,在监控日志采集时自动形成并执行筛选程序,完成对日志的过滤;
步骤303-2:日志加工
监控日志加工的目的是为了迎合传输需要,因为不同的消息系统对消息格式有不同的限定。为保证监控日志的正常传输,在传输前需转换为消息系统可接受的格式;消息系统可以是Kafka、ActiveMQ、ZeroMQ或自定义的Sockert通信程序等;
步骤304:日志采集模块101将加工完毕的监控日志传给消息系统102,再经消息系统102按照路由规则传至监控日志接收方;
监控日志的接收方可以是当前服务器监控系统的流式计算平台104,也可以是位于其他机房的服务器监控系统内的消息系统102;
监控日志接收方由配置管理模块103预先设定的路由规则决定,路由规则由服务器IP地址和服务器端口号组成;这种方式有助于实现跨机房、跨地域的软件系统实时监控处理;
步骤305:流式计算平台104以日志流的形式接收和解析监控日志,通过分析监控日志元信息中报警级别判定软件系统的运行状态,对于需要异常警报的日志,提取日志编号、运行的软件系统、日志产生模块及模块负责人信息;对于不需异常警报的日志,经数据存储模块105对监控日志做持久化处理;
持久化的具体方式是将当前需要保存的监控日志转成相应的文件格式存入文件系统,或以表记录的形式存入数据库中,数据库可以是关系数据库,也可以是非关系数据库;持久化后的数据将用于统计、分析及可视化处理,比如:查阅同一类型的警报在固定时段内的出现频数、或观察一个月内的报警情况,包括报警来自哪些应用、报警类型统计等等;
将传统的日志打包处理转变成日志流的处理模式,使监控系统面向所有即时产生的日志,保证每一条监控日志的实时传输和处理;
步骤306:针对符合异常报警特征的日志,流式计算平台104按照报警级别,从报警模块106中自动调用相应的报警处理方式,并根据模块负责人信息,实时发送报警异常信息;同时对所有报警信息进行持久化存储;
报警模块106内配置了不同报警级别的报警方式,包括邮件、短信、微信、QQ,异常程度不同,调用的报警处理方式也会不同;
特别地,日志报警级别分为DEBUG、INFO、WARN、ERROR、FATAL,其中:
DEBUG即“调试”,该级别的日志信息表示为细粒度的信息事件,对调试应用程序是有帮助的;
INFO即“信息”,该级别的日志信息表示在粗粒度级别上突出强调应用程序的运行过程;
WARN即“警告”,该级别的日志信息表示会出现潜在错误的情形;
ERROR即“错误”,该级别的日志信息表示虽然发生错误事件,但仍然不影响系统的继续运行;
FATAL即“致命”,该级别的日志信息表示一个严重的错误事件,将会导致应用程序的退出;
实时监控系统针对日志报警级别在ERROR以上的异常,会实时报告给软件系统运维人员;具体报警方式为:
(1)ERROR级别日志:根据日志来源信息和业务模块责任人邮件地址,发送报警邮件给模块责任人;同时将该报警信息,通过数据存储模块进行持久化存储;
(2)FATAL级别日志:选用即时通信手段报警;根据日志的来源信息和业务模块责任人手机号码、邮件地址,发送报警短信、报警邮件给模块责任人;同时将该报警信息,通过数据存储模块进行持久化存储。
针对WARN级别及其以下级别的日志,无需将报警信息发送给模块责任人,仅是按照自定义的规则进行统计、存储、可视化等处理。
例如当前需要实时监控中国制造网询盘系统mic_en的发送询盘模块mic_en_inquiry;
按照实时监控需求,配置的筛选规则为:
producer.sources.s.type=com.focustech.flume.source.exec.ExecAppLogSource
producer.sources.s.logLevel=3(默认)//设定筛选条件:报警级别为ERROR及以上;
配置的加工规则为:
[日志内容][{header:{timestamp:2322323,datacenter=工程名,应用名,机房ip,站点}}body{}]
对应于当前的监控需要,工程名为mic_en,应用名为:mic_en_inquiry,机房ip为192.168.2.167,站点为cnc;
配置的路由规则为:
实时监控系统根据不同站点,路由到对应的机器上:
kafka.broker.list.tc=ip:port
kafka.broker.list.usa=ip:port
kafka.broker.list.cnc=ip:port
kafka.broker.list.local=ip:port
配置的负责人信息为:
图6为本发明实施例中实时监控系统在两个时间点的日志采集,其中:
2015-07-1610:40:29,985时刻软件系统的监控日志信息表明,该日志报警等级为WARN;
2015-08-1915:53:50,231时刻软件系统的监控日志信息表明,该日志报警等级为FATAL;
日志采集模块101在实时获取mic_en_inquiry产生的日志时,会按照时间顺序依次对收集到的日志执行日志筛选程序,首先针对2015-07-1610:40:29,985时刻的日志,由于与筛选字段报警级别指定内容不一致,直接将其转入数据存储模块105进行持久化处理,以便后续需要时及时提取;
其次,针对2015-08-1915:53:50,231时刻的日志,符合筛选的警报级别,经加工后将日志传给消息系统102,再通过消息系统102传输至流式计算平台,开始执行报警分析;
流式计算平台104查找2015-08-1915:53:50,231时刻日志的元信息,提取报警级别字段内容,由于2015-08-1915:53:50,231时刻日志的报警级别为FATAL,因而流式计算平台104提取日志产生源头,包括机房编号cnc、机器IP:192.168.2.167、软件系统编号mic_en、业务模块mic_en_inquiry,以帮助软件系统运维人员锁定异常现场,同时提取业务模块负责人张三的联系信息,包括微信、手机号码、邮箱地址,即时将异常报警信息发送给相关负责人;短信警报信息如图7所示。
本发明实施例中还包括一种跨机房、跨区域的软件系统实时监控方法,参阅图8所示,实时监控系统可配置在中国地区的机房,美国机房内的实时监控系统只包括日志采集模块和消息系统,由美国机房采集筛选的监控日志经消息系统传至中国机房实时监控系统的消息系统中,并由中国机房实时监控系统执行后续的报警分析。这种方法有利于面对服务器和网络设备大规模增长时,灵活扩展监控系统的监控范围。
所属领域的普通技术人员应当理解:以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种软件系统的实时监控系统,其特征在于,该监控系统配置于软件系统服务器,用于收集软件系统运行产生的日志信息,包括日志采集模块、消息系统、流式计算平台、数据存储模块、报警模块、配置管理模块;
所述日志采集模块:用于按照设定的日志格式实时收集软件系统的运行日志,并对生成的日志进行实时筛选和加工,以及将选择进行监控报警的日志传给消息系统;
所述消息系统:一方面用于接收日志采集模块发来的监控日志,一方面用于按照路由规则将需监控报警的日志发送给流式计算平台,或发送给另一个实时监控系统的消息系统;
所述配置管理模块:用于配置日志选择的筛选规则和加工规则、日志传输的路由规则、日志异常的报警规则、数据持久化规则、报警消息模板配置及日志产生模块的负责人配置规则;
所述流式计算平台:用于以流数据处理方式逐条处理日志,根据日志报警级别判断是否需要将该异常报警情况进行记录、报警或通知给系统相关负责人;
所述数据存储模块:用于对实时监控过程中产生的数据信息做持久化处理,即存入数据库或存入文件系统中,数据库是关系数据库或是包括NoSQL类的非关系数据库;数据存储模块根据需要对部分监控日志进行持久化处理,涉及被过滤掉的日志、无需报警的日志、需要报警的日志、报警相关信息;
所述报警模块:用于控制报警消息的定向发送,按照日志产生模块的负责人配置,将有异常的日志信息通过手机短信、微信、邮件多种渠道通知负责人;同时报警模块中内置消息模板,供报警时调用,模板中包含应用名、模块名、报警内容。
2.根据权利要求1所述的一种软件系统的实时监控系统,其特征在于,日志采集模块配置于待监控软件系统的服务器中,消息系统、流式计算平台、数据存储模块、报警模块、配置管理模块集成一个系统,且独立于服务器软件系统。
3.一种软件系统的实时监控方法,其特征在于,具体包括如下步骤:
步骤一:配置软件系统实时监控过程中的监控规则,包括路由规则、筛选规则、加工规则、报警规则及模块负责人;
步骤二:设定待监控软件系统运行日志的生成格式,即监控日志;
所述的每一条监控日志由元信息和日志正文组成,元信息用于描述监控日志,它与监控日志之间是一一对应的关系,包括机房编号、机器IP、软件系统编号、模块编号、时间戳、版本、报警等级、日志编号;
步骤三:针对正在运行的监控目标软件系统,日志采集模块按照监控日志的格式实时捕捉系统运行过程中的新增日志,根据日志级别记录监控日志的报警等级,同时按照预定规则对监控日志进行筛选和加工;
所述监控日志的筛选是根据监控需求,由运维人员自行配置,用以准备后续需要进行处理和分析的监控日志;筛选通过指定日志元信息中的属性字段实现;
所述监控日志的加工是根据消息系统的类型,将监控日志转换成消息系统可传输的格式;
步骤四:日志采集模块将加工完毕的监控日志传给消息系统,再经消息系统按照路由规则传至监控日志接收方;
所述监控日志的接收方是当前服务器监控系统的流式计算平台,或是位于其他机房的服务器监控系统内的消息系统;
所述监控日志接收方由配置管理模块预先设定的路由规则决定,路由规则由服务器IP地址和服务器端口号组成;这种方式有助于实现跨机房、跨地域的软件系统实时监控处理;
步骤五:流式计算平台以日志流的形式接收和解析监控日志,通过分析监控日志元信息中报警级别判定软件系统的运行状态,对于需要异常警报的日志,提取日志编号、运行的软件系统、日志产生模块及模块负责人信息;对于不需异常警报的日志,经数据存储模块对监控日志做持久化处理;
步骤六:针对符合异常报警特征的日志,流式计算平台按照报警级别,从报警模块中自动调用相应的报警处理方式,并根据模块负责人信息,实时发送报警异常信息;同时对所有报警信息进行持久化存储即存储于数据存储模块。
4.根据权利要求3所述的一种软件系统的实时监控方法,其特征在于,监控日志的元信息用于描述监控日志,包括机房编号、机器IP、软件系统编号、模块编号、时间戳、版本、报警等级、日志编号;
所述日志采集模块:用于按照设定的日志格式实时收集软件系统的运行日志,并对生成的日志进行实时筛选和加工,以及将选择进行监控报警的日志传给消息系统;日志采集模块配置于待监控系统中;
所述消息系统:用于按照路由规则将需监控报警的日志发送给流式计算平台,或发送给另一个实时监控系统的消息系统;
所述配置管理模块:用于配置日志选择的筛选规则和加工规则、日志传输的路由规则、日志异常的报警规则、数据持久化规则、报警消息模板配置及日志产生模块的负责人配置规则;
所述流式计算平台:用于以流数据处理方式逐条处理日志,根据日志报警级别判断是否需要将该异常报警情况通知给系统相关负责人;
所述数据存储模块:用于对实时监控过程中产生的数据信息做持久化处理,即存入数据库或存入文件系统中,数据库是关系数据库或是包括NoSQL类的非关系数据库;根据需要对部分监控日志进行持久化处理,涉及被过滤掉的日志、无需报警的日志、需要报警的日志、报警相关信息;
所述报警模块:用于控制报警消息的定向发送,按照日志产生模块的负责人配置,将有异常的日志信息通过手机短信、微信、邮件多种渠道通知负责人;同时报警模块中内置消息模板,供报警时调用,模板中包含应用名、模块名、报警内容。
5.根据权利要求3所述的一种软件系统的实时监控方法,其特征在于,步骤五中所提及的持久化,具体方式是将当前需要保存的监控日志转成相应的文件格式存入文件系统,或以表记录的形式存入数据库中,数据库是关系数据库或非关系数据库。
6.根据权利要求3所述的一种软件系统的实施监控方法,其特征在于,步骤六中所提及的报警方式根据报警级别不同有所差异:实时监控系统针对日志报警级别在ERROR以上的异常实时报告给软件系统运维人员,报警方式为:
(1)ERROR级别日志:根据日志来源信息和业务模块责任人邮件地址,发送报警邮件给模块责任人;同时将该报警信息,通过数据存储模块进行持久化存储;
(2)FATAL级别日志:选用即时通信手段报警;根据日志的来源信息和业务模块责任人手机号码、邮件地址,发送报警短信、报警邮件给模块责任人;同时将该报警信息,通过数据存储模块进行持久化存储;针对WARN级别及其以下级别的日志,无需将报警信息发送给模块责任人,仅是按照自定义的规则进行统计、存储、可视化处理。
7.根据权利要求3所述的一种软件系统的实施监控方法,其特征在于,监控系统配置于集群服务器,监控集群服务器的若干软件系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510590307.6A CN105183609B (zh) | 2015-09-16 | 2015-09-16 | 一种应用于软件系统的实时监控系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510590307.6A CN105183609B (zh) | 2015-09-16 | 2015-09-16 | 一种应用于软件系统的实时监控系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105183609A CN105183609A (zh) | 2015-12-23 |
CN105183609B true CN105183609B (zh) | 2017-03-15 |
Family
ID=54905701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510590307.6A Active CN105183609B (zh) | 2015-09-16 | 2015-09-16 | 一种应用于软件系统的实时监控系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105183609B (zh) |
Families Citing this family (60)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107332680A (zh) * | 2016-04-28 | 2017-11-07 | 苏宁云商集团股份有限公司 | 一种系统监控方法及装置 |
CN106250303A (zh) * | 2016-07-28 | 2016-12-21 | 北京北信源软件股份有限公司 | 业务日志收集及预警系统和业务日志收集及预警方法 |
CN106302407B (zh) * | 2016-08-02 | 2019-05-17 | 四川秘无痕信息安全技术有限责任公司 | 一种监控微信朋友圈发送数据的方法 |
CN106295406A (zh) * | 2016-08-13 | 2017-01-04 | 深圳市樊溪电子有限公司 | 一种用于区块链自安全存储系统及其方法 |
CN106371968B (zh) * | 2016-08-23 | 2019-03-05 | 北京奇虎科技有限公司 | 一种对实时计算进行监控的方法和装置 |
CN106776911B (zh) * | 2016-11-30 | 2020-04-10 | 上海华力微电子有限公司 | WAT机台报警引起的lot异常处理优化方法及系统 |
CN108153643A (zh) * | 2016-12-02 | 2018-06-12 | 北京奇虎科技有限公司 | 日志监控系统及方法 |
CN106940677A (zh) * | 2017-02-13 | 2017-07-11 | 咪咕音乐有限公司 | 一种应用日志数据告警方法及装置 |
CN107071809A (zh) * | 2017-02-17 | 2017-08-18 | 山东浪潮商用系统有限公司 | 一种移动通信网管数据时效提升方法 |
CN106897189A (zh) * | 2017-02-24 | 2017-06-27 | 郑州云海信息技术有限公司 | 一种基于数据实时推送的日志监控系统 |
CN107196796A (zh) * | 2017-05-19 | 2017-09-22 | 郑州云海信息技术有限公司 | 一种收集服务器管理系统日志信息的装置和方法 |
CN107239381B (zh) * | 2017-06-07 | 2021-09-07 | 北京奇虎科技有限公司 | 崩溃信息的处理方法、装置及系统 |
CN107729096A (zh) * | 2017-09-20 | 2018-02-23 | 中国银行股份有限公司 | 信息分流方法及系统 |
CN107818041A (zh) * | 2017-10-24 | 2018-03-20 | 南京航空航天大学 | Secondo系统文件读写检测软件 |
CN107870827B (zh) * | 2017-11-07 | 2021-01-08 | 中国银行股份有限公司 | 基于校验的数据质量控制方法和装置 |
CN107992398B (zh) * | 2017-12-22 | 2021-04-27 | 宜人恒业科技发展(北京)有限公司 | 一种业务系统的监控方法和监控系统 |
CN108304293A (zh) * | 2017-12-27 | 2018-07-20 | 武汉长江通信智联技术有限公司 | 一种基于大数据技术的软件系统监控方法 |
CN108132868A (zh) * | 2018-01-15 | 2018-06-08 | 政采云有限公司 | 一种数据监控方法、装置、计算设备及存储介质 |
CN108306980A (zh) * | 2018-03-06 | 2018-07-20 | 北京工业大学 | 一种机务飞行保障大数据日志分析系统 |
CN108491309A (zh) * | 2018-03-22 | 2018-09-04 | 苏州汉能网络科技有限公司 | 一种具有放大计算机功能的软件系统 |
CN108549671B (zh) * | 2018-03-28 | 2022-07-08 | 微梦创科网络科技(中国)有限公司 | 数据实时采集并可视化的实现方法及装置 |
CN108459944A (zh) * | 2018-03-29 | 2018-08-28 | 中科创能实业有限公司 | 系统运行监控方法、装置及服务器 |
CN108710563B (zh) * | 2018-05-16 | 2022-03-01 | 广州市千钧网络科技有限公司 | 一种应用程序日志记录方法及装置 |
CN108897669B (zh) * | 2018-07-05 | 2023-03-14 | 一城一家网络科技有限公司 | 应用监控方法及设备 |
CN109726074A (zh) * | 2018-08-31 | 2019-05-07 | 网联清算有限公司 | 日志处理方法、装置、计算机设备和存储介质 |
CN109284216A (zh) * | 2018-09-27 | 2019-01-29 | 深圳市佰仟金融服务有限公司 | 系统监控的方法及终端设备 |
CN111078443B (zh) * | 2018-10-22 | 2023-04-07 | 千寻位置网络有限公司 | 缺陷自动采集上报方法及装置、服务器 |
CN109492073B (zh) * | 2018-10-31 | 2021-11-16 | 北京达佳互联信息技术有限公司 | 日志搜索方法、日志搜索装置和计算机可读存储介质 |
CN109361546B (zh) * | 2018-11-05 | 2022-03-29 | 视联动力信息技术股份有限公司 | 一种基于视联网的程序预警方法和装置 |
CN111314103B (zh) * | 2018-12-12 | 2022-12-20 | 上海安吉星信息服务有限公司 | 一种数据交换平台的监控系统和存储介质 |
CN109783309B (zh) * | 2018-12-14 | 2023-11-10 | 深圳市胜来信息技术有限公司 | 网页加载的异常监控方法及装置 |
CN109684170A (zh) * | 2018-12-14 | 2019-04-26 | 新博卓畅技术(北京)有限公司 | 一种api服务智能监控系统及方法 |
CN109684180A (zh) * | 2018-12-20 | 2019-04-26 | 北京百度网讯科技有限公司 | 用于输出信息的方法和装置 |
CN109617737A (zh) * | 2018-12-27 | 2019-04-12 | 携程计算机技术(上海)有限公司 | 互联网的日志平台的监控方法及系统 |
CN111382042A (zh) * | 2018-12-29 | 2020-07-07 | 上海北塔软件股份有限公司 | 一种基于大数据流式计算的日志管理方法 |
CN109818787A (zh) * | 2019-01-21 | 2019-05-28 | 苏州科达科技股份有限公司 | 业务异常检测方法、装置及存储介质 |
CN110188018B (zh) * | 2019-05-29 | 2023-06-09 | 广州伟宏智能科技有限公司 | 一种数据同步复制软件运维监控系统 |
CN110399271B (zh) * | 2019-07-29 | 2022-03-18 | 中国工商银行股份有限公司 | 日志处理设备、方法、电子设备及计算机可读存储介质 |
CN110413585B (zh) * | 2019-07-29 | 2022-03-15 | 中国工商银行股份有限公司 | 日志处理设备、方法、电子设备及计算机可读存储介质 |
CN110601879B (zh) * | 2019-08-30 | 2022-11-08 | 深圳壹账通智能科技有限公司 | Zabbix告警过程信息的形成方法、装置及存储介质 |
CN110601885A (zh) * | 2019-09-06 | 2019-12-20 | 贵州省广播电视信息网络股份有限公司 | 一种人工智能公有云异常指示报警系统 |
CN110780857B (zh) * | 2019-10-23 | 2024-01-30 | 杭州涂鸦信息技术有限公司 | 一种统一日志组件 |
CN110837399A (zh) * | 2019-10-31 | 2020-02-25 | 锐捷网络股份有限公司 | 一种管理流式计算应用程序的方法、装置及计算设备 |
CN110795414B (zh) * | 2019-11-01 | 2023-04-14 | 北京北方华创微电子装备有限公司 | 半导体设备报警分析方法及装置 |
CN110865921A (zh) * | 2019-11-08 | 2020-03-06 | 拉扎斯网络科技(上海)有限公司 | 数据监控方法、装置、可读存储介质和电子设备 |
CN110794800B (zh) * | 2019-12-11 | 2023-11-21 | 河南中烟工业有限责任公司 | 一种智慧工厂信息管理的监控系统 |
CN111767197A (zh) * | 2020-06-22 | 2020-10-13 | 郑州阿帕斯数云信息科技有限公司 | 日志处理方法和装置 |
CN112071031A (zh) * | 2020-07-22 | 2020-12-11 | 中冶南方都市环保工程技术股份有限公司 | 一种基于实时数据监测的报警诊断方法及系统 |
CN111967850B (zh) * | 2020-08-19 | 2022-10-18 | 支付宝(杭州)信息技术有限公司 | 一种数据报送监测方法、装置及电子设备 |
CN112115019A (zh) * | 2020-08-26 | 2020-12-22 | 上海汇付数据服务有限公司 | 用于应用程序的应用日志监控方法以及系统 |
CN112162705B (zh) * | 2020-09-30 | 2024-07-16 | 新浪技术(中国)有限公司 | 一种raid盘组故障自动下线报修方法及系统 |
CN112231192A (zh) * | 2020-10-28 | 2021-01-15 | 北京中电普华信息技术有限公司 | 一种日志数据分析方法及装置 |
TWI755147B (zh) * | 2020-11-11 | 2022-02-11 | 國立勤益科技大學 | 口罩配戴辨識系統 |
CN112948202A (zh) * | 2021-02-02 | 2021-06-11 | 烽火通信科技股份有限公司 | 应用程序监控方法、装置、设备及可读存储介质 |
CN113448763B (zh) * | 2021-07-16 | 2022-07-26 | 广东电网有限责任公司 | 全生命周期管理的可动态扩展分组告警服务方法 |
CN113656264B (zh) * | 2021-09-08 | 2023-06-06 | 上海童渠信息技术有限公司 | 一种实时报警服务平台系统 |
CN114915488A (zh) * | 2022-06-15 | 2022-08-16 | 中国联合网络通信集团有限公司 | 流计算监控方法和设备 |
CN115333929A (zh) * | 2022-07-14 | 2022-11-11 | 深圳市大头兄弟科技有限公司 | 一种基于集群的日志预警方法和相关设备 |
CN116049122B (zh) * | 2022-08-12 | 2023-11-21 | 荣耀终端有限公司 | 日志信息传输控制方法、电子设备和存储介质 |
CN115484147A (zh) * | 2022-08-30 | 2022-12-16 | 浪潮通信信息系统有限公司 | 一种支持多系统多指标的高可用监控方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102594598A (zh) * | 2012-02-16 | 2012-07-18 | 浪潮(北京)电子信息产业有限公司 | 一种日志管理系统及其实现方法 |
CN103413088A (zh) * | 2012-07-09 | 2013-11-27 | 深圳市利谱信息技术有限公司 | 一种计算机文档操作安全审计系统 |
CN104598369A (zh) * | 2014-12-23 | 2015-05-06 | 北京畅游天下网络技术有限公司 | 在移动设备中实现的软件监控方法和装置 |
CN104683383A (zh) * | 2013-11-28 | 2015-06-03 | 南京神盾信息技术有限公司 | 一种基于移动终端的监控报警系统 |
-
2015
- 2015-09-16 CN CN201510590307.6A patent/CN105183609B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102594598A (zh) * | 2012-02-16 | 2012-07-18 | 浪潮(北京)电子信息产业有限公司 | 一种日志管理系统及其实现方法 |
CN103413088A (zh) * | 2012-07-09 | 2013-11-27 | 深圳市利谱信息技术有限公司 | 一种计算机文档操作安全审计系统 |
CN104683383A (zh) * | 2013-11-28 | 2015-06-03 | 南京神盾信息技术有限公司 | 一种基于移动终端的监控报警系统 |
CN104598369A (zh) * | 2014-12-23 | 2015-05-06 | 北京畅游天下网络技术有限公司 | 在移动设备中实现的软件监控方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105183609A (zh) | 2015-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105183609B (zh) | 一种应用于软件系统的实时监控系统及方法 | |
CN102447570B (zh) | 一种基于健康度分析的监控装置及方法 | |
CN107046481B (zh) | 一种信息系统综合网管系统综合分析平台 | |
CN110493348B (zh) | 一种基于物联网的智能监控报警系统 | |
CN104144071B (zh) | 系统日志的处理方法和系统日志的处理平台 | |
CN105159964B (zh) | 一种日志监控方法及系统 | |
CN104407964B (zh) | 一种基于数据中心的集中监控系统及方法 | |
CN103544093B (zh) | 监控报警控制方法及其系统 | |
CN104243236B (zh) | 一种监控系统运维告警数据分析的方法、系统及服务器 | |
CN106371986A (zh) | 一种日志处理运维监控系统 | |
CN102938710B (zh) | 用于大规模服务器的监控系统和方法 | |
WO2007143943A1 (fr) | Procédé, système et dispositif réseau de maintenance centralisée de dispositifs multiples | |
CN108197261A (zh) | 一种智慧交通操作系统 | |
CN107612779B (zh) | 调度数据网二次安全防护网络设备及业务运行监视系统 | |
CN110209518A (zh) | 一种多数据源日志数据集中收集存储方法及装置 | |
CN108737170A (zh) | 一种批量日志异常数据告警方法及装置 | |
CN102014020A (zh) | 一种用于对网络设备进行网络监控的设备及其方法 | |
CN107679713A (zh) | 一种输变电设备状态告警处理方法 | |
CN101989931A (zh) | 一种运维告警处理方法和装置 | |
CN104637265A (zh) | 调度自动化多级一体化智能值班报警系统 | |
CN105917625A (zh) | 使用附加数据的检测到的网络异常的分类 | |
CN110798348B (zh) | 配电通信网故障告警方法、服务器及系统 | |
CN104574219A (zh) | 电网业务信息系统运行工况的监测预警方法及系统 | |
CN114020581A (zh) | 基于拓扑优化FP-Growth算法的告警关联方法 | |
CN108234161A (zh) | 用于线上线下多层网络架构的通路检测方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |