CN111240940A - 实时业务监控方法、装置、电子设备、存储介质 - Google Patents
实时业务监控方法、装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN111240940A CN111240940A CN202010036267.1A CN202010036267A CN111240940A CN 111240940 A CN111240940 A CN 111240940A CN 202010036267 A CN202010036267 A CN 202010036267A CN 111240940 A CN111240940 A CN 111240940A
- Authority
- CN
- China
- Prior art keywords
- data
- executed
- data snapshot
- events
- task
- 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.)
- Granted
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/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- 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
- G06F11/3072—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种实时业务监控方法、装置、电子设备、存储介质,实时业务监控方法包括:获取数据库日志以生成第一数据快照;获取业务日志以生成第二数据快照;获取接口拦截数据以生成第三数据快照;通过第一规则引擎将所述第一数据快照、第二数据快照以及第三数据快照识别为不同业务事件类型的事件;通过第二规则引擎,将不同业务事件类型的事件聚合,以生成待执行任务;以及执行所述待执行任务以进行数据检查。本发明提供的方法及装置实现实时业务监控,且无需依赖业务系统。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种实时业务监控方法、装置、电子设备、存储介质。
背景技术
随着互联网及信息技术的发展,通过线上系统处理业务数据的方式被广泛应用。然而,线上系统由于系统bug、网络故障、设备宕机等种种可能的原因,难免会出现一些不一致的业务数据。在常规的解决方案中,通常会通过T+1日的对账、定时扫描补偿等方式保障业务数据的最终一致性。但是,在实际应用中,上述方案仍然不能保证发现和解决所有的业务数据不一致的问题,而且往往时效性比较差。对T+1的对账需要第二天才能发现问题,扫描补偿也很难覆盖所有的问题场景。由此可见,传统的解决方案中,基本都是对可预期存在的问题的低效的检查处理方案,难以及时的发现和告警问题,对于预期之外可能存在的问题大多也是束手无策。侧重点在对可预期的问题的及时修复上。
为了解决这样的问题,BCP(Business Check Platform)系统应运而生。该方案中,系统通过接收数据库变更消息驱动规则脚本完成业务审计,并反馈审计结果,及时发现和解决线上的业务不一致的故障。
然而,BCP系统收到实时数据变更消息后,会反查业务系统,获取对账数据,然后再脚本中完成业务审计对账。对业务系统有依赖,且大大增加了业务系统的每秒查询率(QPS),也对业务系统带来一定的开发工作量,带来了新的不稳定因素。另一方面。事后的接口查询本身得到的并不是业务处理过程中的快照,限制了审计核查的能力,难以实现完整的业务生命周期的监控检查。
发明内容
本发明为了克服上述相关技术存在的缺陷,提供一种实时业务监控方法、装置、电子设备、存储介质,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
根据本发明的一个方面,提供一种实时业务监控方法,包括:
获取数据库日志以生成第一数据快照;
获取业务日志以生成第二数据快照;
获取接口拦截数据以生成第三数据快照;
通过第一规则引擎将所述第一数据快照、第二数据快照以及第三数据快照识别为不同业务事件类型的事件;
通过第二规则引擎,将不同业务事件类型的事件聚合,以生成待执行任务;以及
执行所述待执行任务以进行数据检查。
在本发明的一些实施例中,所述第一规则引擎中设有各业务事件类型的第一表达式规则,所述通过第一规则引擎将所述第一数据快照、第二数据快照以及第三数据快照识别为不同业务事件类型的事件包括:
对所述第一数据快照、第二数据快照以及第三数据快照分别执行各业务事件类型的第一表达式规则,以将第一数据快照、第二数据快照以及第三数据快照识别为不同业务事件类型的事件。
在本发明的一些实施例中,所述第二规则引擎中设有至少一用于聚合的第二表达式规则,所述通过第二规则引擎,将不同业务事件类型的事件聚合,以生成待执行任务包括:
对不同业务事件类型的事件的字段执行所述第二表达式规则,以将不同业务事件类型的事件聚合,生成待执行任务。
在本发明的一些实施例中,若待聚合的业务事件类型大于等于3种,且所述第二规则引擎中设有多个第二表达式规则,各所述第二表达式规则使得该多个待聚合的业务事件类型两两关联,则所述通过第二规则引擎,将不同业务事件类型的事件聚合,以生成待执行任务包括:
自待聚合的业务事件类型中选取两个待聚合的业务事件类型的事件进行聚合,以生成待执行任务;
判断是否存在还未聚合的业务事件类型的事件;
若是,则将所述待执行任务作为抽象业务事件类型的事件,并将该抽象业务事件类型的事件作为待聚合的业务事件类型的事件,并迭代执行事件的聚合;
若否,则结束事件的聚合。
在本发明的一些实施例中,所述执行所述待执行任务以进行数据检查包括:
依据所述事件的聚合的迭代,反向执行所述待执行任务以进行数据检查。
在本发明的一些实施例中,所述执行所述待执行任务以进行数据检查包括:
通过脚本,配置第三表达式规则,依据所述第三表达式规则执行所述待执行任务以进行数据检查。
在本发明的一些实施例中,所述接口拦截数据包括rest接口和/或rpc接口调用拦截器的出入参数据。
根据本发明的又一方面,还提供一种实时业务监控装置,包括:
第一获取模块,用于获取数据库日志以生成第一数据快照;
第二获取模块,用于获取业务日志以生成第二数据快照;
第三获取模块,用于获取接口拦截数据以生成第三数据快照;
识别模块,用于通过第一规则引擎将所述第一数据快照、第二数据快照以及第三数据快照识别为不同业务事件类型的事件;
聚合模块,用于通过第二规则引擎,将不同业务事件类型的事件聚合,以生成待执行任务;以及
执行模块,用于执行所述待执行任务以进行数据检查。
根据本发明的又一方面,还提供一种电子设备,所述电子设备包括:处理器;存储介质,其上存储有计算机程序,所述计算机程序被所述处理器运行时执行如上所述的步骤。
根据本发明的又一方面,还提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上所述的步骤。
相比现有技术,本发明的优势在于:
通过多个数据来源获得大量数据快照,从而可以基于数据快照的事件类型识别及事件聚类生成用以进行数据检查的待执行任务,由此,一方面,基于数据快照实现实时数据对账,无需依赖业务系统,且不会对业务系统到来额外的性能压力,对业务系统无依赖、无侵入,降低了业务系统接入监控的风险和难度;另一方面,基于数据快照的监控检查,可以实现业务完整生命周期的监控检查。
附图说明
通过参照附图详细描述其示例实施方式,本发明的上述和其它特征及优点将变得更加明显。
图1示出了根据本发明实施例的实时业务监控方法的流程图。
图2示出了根据本发明具体实施例的获取第一数据快照的示意图。
图3示出了根据本发明具体实施例的获取第二数据快照的示意图。
图4示出了根据本发明具体实施例的业务事件类型大于两种的情况下,事件聚合的示意图。
图5示出了根据本发明实施例的实时业务监控装置的模块图。
图6示意性示出本发明示例性实施例中一种计算机可读存储介质示意图。
图7示意性示出本发明示例性实施例中一种电子设备示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本发明的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的步骤。例如,有的步骤还可以分解,而有的步骤可以合并或部分合并,因此,实际执行的顺序有可能根据实际情况改变。
图1示出了根据本发明实施例的实时业务监控方法的流程图。实时业务监控方法包括如下步骤:
步骤S110:获取数据库日志以生成第一数据快照;
步骤S120:获取业务日志以生成第二数据快照;
步骤S130:获取接口拦截数据以生成第三数据快照;
步骤S140:通过第一规则引擎将所述第一数据快照、第二数据快照以及第三数据快照识别为不同业务事件类型的事件;
步骤S150:通过第二规则引擎,将不同业务事件类型的事件聚合,以生成待执行任务;以及
步骤S160:执行所述待执行任务以进行数据检查。
在本发明提供的实时业务监控方法中,通过多个数据来源获得大量数据快照,从而可以基于数据快照的事件类型识别及事件聚类生成用以进行数据检查的待执行任务,由此,一方面,基于数据快照实现实时数据对账,无需依赖业务系统,且不会对业务系统到来额外的性能压力,对业务系统无依赖、无侵入,降低了业务系统接入监控的风险和难度;另一方面,基于数据快照的监控检查,可以实现业务完整生命周期的监控检查。
在本发明的各个实施例中,采用快照技术来获取和处理数据,存储网络行业协会SNIA(StorageNetworking Industry Association)对快照(Snapshot)的定义是:关于指定数据集合的一个完全可用拷贝,该拷贝包括相应数据在某个时间点(拷贝开始的时间点)的映像。快照可以是其所表示的数据的一个副本,也可以是数据的一个复制品。由此,实现对业务系统的解耦,无需依赖业务系统。
在本发明的各个实施例中,上述步骤可以按不同的顺序执行,例如步骤S110、步骤S120及步骤S130同步执行,以相反的顺序执行或其它顺序执行,这些变化方式都在本发明的保护范围之内,本发明并非以此为限制。
在本发明的一些实施例中,上述步骤S110的实现可以参见图2,基于MySQL(关系型数据库管理系统)的主从同步机制,MySQL数据库(业务系统数据库210)的数据变更操作将会写入binlog日志220(binlog是一个二进制格式的文件,用于记录用户对数据库更新的SQL语句信息,例如更改数据库表和更改内容的SQL语句都会记录到binlog里),并实时的将binlog日志同步至canal230(由阿里开源的一个通过模拟的MySQL从库实例实现的binlog数据消息化的工具)。系统通过订阅canal的数据变更消息,从而获得数据库实时变更数据。通过获得数据库实时变更数据可以生成第一数据快照。
在本发明的一些实施例中,上述步骤S120的实现可以参见图3,本实施例基于Flume(一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力)及Kafka(一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据)的方式将日志转化为消息源,然后进行后续的甄别处理。由此,通过业务系统310的业务执行将业务执行写入业务日志320,Flume330监控业务日志320,以将业务日志320转化为消息,推送至Kafka340,以供步骤S120消费消息。进一步地,本发明可以通过图3示出的方式,从业务日志320中查询包含指定标记的日志内容,从而将包含指定标记的日志内容转化成消息源,来生成第二数据快照。
在本发明的一些实施例中,用于生成第三数据快照的所述接口拦截数据包括rest(表述性状态传递,Representational State Transfer,一种软件架构风格。它是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性)接口和/或rpc(远程过程调用,Remote Procedure Call)接口调用拦截器的出入参数据。进一步地,rest接口、rpc调用的拦截器可以在中间件、框架层实现。拦截器的出入参数据也可以通过消息队列的形式上报并生成第三数据快照。
具体而言,在实际业务中,要保证业务一致性,需要保证用户的业务请求和业务系统的收单信息一致,业务系统的收单信息和业务系统的执行信息一致,业务系统和依赖的三方服务一致,业务系统登记的处理结果和返回给用户的处理结果一致。由此,本发明的业务检查所需要的数据就包括:1)用户的请求、响应数据快照;2)三方服务的请求、响应数据快照;3)业务系统本身的持久化数据快照以及其它数据。而这些数据块被步骤S110至步骤S130获得的第一数据快照至第三数据快照几乎完全覆盖,从而便于后续的业务检查。
在本发明的一些实施例中,所述第一规则引擎中设有各业务事件类型的第一表达式规则,步骤S140通过第一规则引擎将所述第一数据快照、第二数据快照以及第三数据快照识别为不同业务事件类型的事件可以包括如下步骤:对所述第一数据快照、第二数据快照以及第三数据快照分别执行各业务事件类型的第一表达式规则,以将第一数据快照、第二数据快照以及第三数据快照识别为不同业务事件类型的事件。例如,可以将第一数据快照、第二数据快照以及第三数据快照作为第一规则引擎中的第一表达式规则的数据变量,通过执行可配置的第一表达式规则识别当前数据快照是否有效以及对应的业务含义(以归入不同业务事件类型)。可以通过配置第一表达式规则,指定某个表达式执行结果为真时,该数据快照即可被认为是属于业务事件类型的事件。由此,一方面,可以过滤掉不必要的中间状态的数据快照;另一方面,实现对数据快照做业务分析,抽象出数据的业务含义。
在本发明的一些实施例中,所述第二规则引擎中设有至少一用于聚合的第二表达式规则,步骤S150通过第二规则引擎,将不同业务事件类型的事件聚合,以生成待执行任务可以包括如下步骤:对不同业务事件类型的事件的字段执行所述第二表达式规则,以将不同业务事件类型的事件聚合,生成待执行任务。
具体而言,大量的数据快照是离散的,无简单明确的关联关系的,在监控检查之前,通过上述步骤可以将相关的数据快照联系起来。通过步骤S140的业务抽象,实现了数据快照的业务事件类型的分类,每一数据快照都具有业务事件类型。由此,可以便于关联关系的配置,例如,可以配置第二表达式规则来明确各业务事件类型的事件之间存在的关联关系以及比对关系。当应用到某一比交易的时候,通常事件和事件之间必然会存在一个或多个字段之间具有明确的相等关系(也可能是经过某些数据加工后相等)。故此,可以将具有关联关系的某几类的事件分别通过表达式计算引擎计算出存在相等关系的字段的值,并将计算结果相等的数据聚合在一个相同的待执行任务下。例如:有A业务事件类型的事件包含id、金额、时间、支付请求号等字段;有B业务事件类型的事件包含id、金额、事件、业务方请求单号等字段。通过配置,指定A业务事件类型的事件的支付请求号应该等于BA业务事件类型的事件的业务方请求单号字段,步骤S150会将收到的数据快照中所有AB两中业务事件类型的事件中以上两个字段值相等的消息聚合在一个独立的任务下。
在上述实施例的一个具体实现中,若待聚合的业务事件类型大于等于3种,且所述第二规则引擎中设有多个第二表达式规则,各所述第二表达式规则使得该多个待聚合的业务事件类型两两关联,则步骤S150通过第二规则引擎,将不同业务事件类型的事件聚合,以生成待执行任务可以包括如下步骤:自待聚合的业务事件类型中选取两个待聚合的业务事件类型的事件进行聚合,以生成待执行任务;判断是否存在还未聚合的业务事件类型的事件;若是,则将所述待执行任务作为抽象业务事件类型的事件,并将该抽象业务事件类型的事件作为待聚合的业务事件类型的事件,并迭代执行事件的聚合;若否,则结束事件的聚合。
由此,可以应用在大量场景中。下面以图4为例,事件A101和事件B102存在可计算的关联值,事件B102和事件C103存在可计算的关联值。则先将事件A101和事件B102合到待执行任务A201下,再将待执行任务A201(将待执行任务A201再次抽象成一个新的事件A’,包含了AB两个事件的全部数据)和事件C103聚合到待执行任务B202下。由此,一方面,避免大量场景中,各事件皆存在可计算的关联值,从而导致聚合步骤混乱出错的问题;另一方面,通过将任务抽象为事件,从而便于聚合的迭代;再一方面,通过聚合的迭代,实现待执行任务的依次包含(任务B包含任务B),以使得任务能够被顺序执行,避免任务的重复执行,在提高聚合效率的同时,提高任务执行的效率。
在上述实施例中,所述执行所述待执行任务以进行数据检查包括:依据所述事件的聚合的迭代,反向执行所述待执行任务以进行数据检查。换言之,依据待执行任务的包含关系,依次从最大的待执行任务开始向内执行(如图4,先执行任务B,再执行任务A)。
在本发明的一些实施例中,步骤S160执行所述待执行任务以进行数据检查可以包括如下步骤:通过脚本,配置第三表达式规则,依据所述第三表达式规则执行所述待执行任务以进行数据检查。具体而言,当所有相关数据快照的事件都聚合完毕,就可以对数据执行业务检查。不同的业务数据存在不同的业务规则和数据体现方式,所以多种业务数据的比对不存在完全统一的比对规则模型。为此,可以通过脚本的方式,灵活的配置和描述业务规则,已经聚合的数据将作为脚本的入参提供,在脚本中,使用者可任意定制业务规则,实现灵活配置,快速部署。
例如,在一个具体的实施例中,假设有订单表order和支付单表pay_order,当用户发起订单支付后,系统会向支付机构发送支付指令,并根据支付结果更新pay_order表的状态status=1支付成功或者2支付失败,同时会向交易系统发送支付结果通知,交易系统收到支付结果通知后,需要更新交易订单表order的支付状态pay_status=1已支付或者2支付失败待重新支付。
order表结构:
pay_order表结构
基于上述场景,检查支付单状态和交易订单的支付状态和实际支付金额是否一致,可通过脚本,配置第三表达式规则:
事件规则(pre表示数据库数据更新前的值,next表示更新后的值):
支付单支付成功事件(别名:pay-succ)匹配规则:pre.status!=next.status.status&&next.status==1
交易单支付状态成功事件(别名:order-paysucc)匹配规则:pre.pay_status!=next.pay_status.status&&next.pay_status==1
事件匹配规则:pay-succ.next.id=order-paysucc.pay_id
系统收到上述两个事件后执行数据检查规则pay-succ.next.amount=order-paysucc.amount(检查实际支付金额是否等于订单金额)。
如果检查不通过,则可以向相关负责人发送告警。如果系统只收到了两个事件中的一个,则可根据设定的超时事件判断双方状态不一致。
以上仅仅是示意性地示出本发明的一个具体实现方式,在实际使用中,还可以把支付机构返回的支付结果信息一起用来检查,确认实际支付机构支付的金额状态和支付单的金额状态是否一致,最终达到检查订单支付业务是否合法正确的目标。
进一步地,在步骤S160中,当检查中发现的不一致的业务数据,需要及时告警,一般可通过短信、电话、邮件以及即时聊天工具的方式发布告警信息。
上仅仅是本发明提供的一个或多个具体实现方式,各具体实现方式可以单独或组合来实现,本发明并非以为限制。
根据本发明的又一方面,还提供一种实时业务监控装置,图5示出了根据本发明实施例的实时业务监控装置的模块图。实时业务监控装置400包括第一获取模块410,第二获取模块420、第三获取模块430、识别模块440、聚合模块450以及执行模块460。
第一获取模块410用于获取数据库日志以生成第一数据快照;
第二获取模块420用于获取业务日志以生成第二数据快照;
第三获取模块430用于获取接口拦截数据以生成第三数据快照;
识别模块440用于通过第一规则引擎将所述第一数据快照、第二数据快照以及第三数据快照识别为不同业务事件类型的事件;
聚合模块450用于通过第二规则引擎,将不同业务事件类型的事件聚合,以生成待执行任务;以及
执行模块460用于执行所述待执行任务以进行数据检查。
在本发明提供的实时业务监控装置中,通过多个数据来源获得大量数据快照,从而可以基于数据快照的事件类型识别及事件聚类生成用以进行数据检查的待执行任务,由此,一方面,基于数据快照实现实时数据对账,无需依赖业务系统,且不会对业务系统到来额外的性能压力,对业务系统无依赖、无侵入,降低了业务系统接入监控的风险和难度;另一方面,基于数据快照的监控检查,可以实现业务完整生命周期的监控检查。
图5仅仅是示意性的示出本发明提供的实时业务监控装置400,在不违背本发明构思的前提下,模块的拆分、合并、增加都在本发明的保护范围之内。本发明提供的实时业务监控装置400可以由软件、硬件、固件、插件及他们之间的任意组合来实现,本发明并非以此为限。
在本发明的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被例如处理器执行时可以实现上述任意一个实施例中所述实时业务监控方法及实时业务监控方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述实时业务监控方法及实时业务监控方法部分中描述的根据本发明各种示例性实施方式的步骤。
参考图6所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品700,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在租户计算设备上执行、部分地在租户设备上执行、作为一个独立的软件包执行、部分在租户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到租户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
在本发明的示例性实施例中,还提供一种电子设备,该电子设备可以包括处理器,以及用于存储所述处理器的可执行指令的存储器。其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一个实施例中所述实时业务监控方法及实时业务监控方法的步骤。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图7来描述根据本发明的这种实施方式的电子设备500。图7显示的电子设备500仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,电子设备500以通用计算设备的形式表现。电子设备500的组件可以包括但不限于:至少一个处理单元510、至少一个存储单元520、连接不同系统组件(包括存储单元520和处理单元510)的总线530、显示单元540等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元510执行,使得所述处理单元510执行本说明书上述实时业务监控方法及实时业务监控方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元510可以执行如图1所示的步骤。
所述存储单元520可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)5201和/或高速缓存存储单元5202,还可以进一步包括只读存储单元(ROM)5203。
所述存储单元520还可以包括具有一组(至少一个)程序模块5205的程序/实用工具5204,这样的程序模块5205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线530可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备500也可以与一个或多个外部设备600(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得租户能与该电子设备500交互的设备通信,和/或与使得该电子设备500能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口550进行。并且,电子设备500还可以通过网络适配器560与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器560可以通过总线530与电子设备500的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备500使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本发明实施方式的上述实时业务监控方法及实时业务监控方法。
相比现有技术,本发明的优势在于:
通过多个数据来源获得大量数据快照,从而可以基于数据快照的事件类型识别及事件聚类生成用以进行数据检查的待执行任务,由此,一方面,基于数据快照实现实时数据对账,无需依赖业务系统,且不会对业务系统到来额外的性能压力,对业务系统无依赖、无侵入,降低了业务系统接入监控的风险和难度;另一方面,基于数据快照的监控检查,可以实现业务完整生命周期的监控检查。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由所附的权利要求指出。
Claims (10)
1.一种实时业务监控方法,其特征在于,包括:
获取数据库日志以生成第一数据快照;
获取业务日志以生成第二数据快照;
获取接口拦截数据以生成第三数据快照;
通过第一规则引擎将所述第一数据快照、第二数据快照以及第三数据快照识别为不同业务事件类型的事件;
通过第二规则引擎,将不同业务事件类型的事件聚合,以生成待执行任务;以及
执行所述待执行任务以进行数据检查。
2.如权利要求1所述的实时业务监控方法,其特征在于,所述第一规则引擎中设有各业务事件类型的第一表达式规则,所述通过第一规则引擎将所述第一数据快照、第二数据快照以及第三数据快照识别为不同业务事件类型的事件包括:
对所述第一数据快照、第二数据快照以及第三数据快照分别执行各业务事件类型的第一表达式规则,以将第一数据快照、第二数据快照以及第三数据快照识别为不同业务事件类型的事件。
3.如权利要求2所述的实时业务监控方法,其特征在于,所述第二规则引擎中设有至少一用于聚合的第二表达式规则,所述通过第二规则引擎,将不同业务事件类型的事件聚合,以生成待执行任务包括:
对不同业务事件类型的事件的字段执行所述第二表达式规则,以将不同业务事件类型的事件聚合,生成待执行任务。
4.如权利要求3所述的实时业务监控方法,其特征在于,若待聚合的业务事件类型大于等于3种,且所述第二规则引擎中设有多个第二表达式规则,各所述第二表达式规则使得该多个待聚合的业务事件类型两两关联,则所述通过第二规则引擎,将不同业务事件类型的事件聚合,以生成待执行任务包括:
自待聚合的业务事件类型中选取两个待聚合的业务事件类型的事件进行聚合,以生成待执行任务;
判断是否存在还未聚合的业务事件类型的事件;
若是,则将所述待执行任务作为抽象业务事件类型的事件,并将该抽象业务事件类型的事件作为待聚合的业务事件类型的事件,并迭代执行事件的聚合;
若否,则结束事件的聚合。
5.如权利要求4所述的实时业务监控方法,其特征在于,所述执行所述待执行任务以进行数据检查包括:
依据所述事件的聚合的迭代,反向执行所述待执行任务以进行数据检查。
6.如权利要求1至5任一项所述的实时业务监控方法,其特征在于,所述执行所述待执行任务以进行数据检查包括:
通过脚本,配置第三表达式规则,依据所述第三表达式规则执行所述待执行任务以进行数据检查。
7.如权利要求1至5任一项所述的实时业务监控方法,其特征在于,所述接口拦截数据包括rest接口和/或rpc接口调用拦截器的出入参数据。
8.一种实时业务监控装置,其特征在于,包括:
第一获取模块,用于获取数据库日志以生成第一数据快照;
第二获取模块,用于获取业务日志以生成第二数据快照;
第三获取模块,用于获取接口拦截数据以生成第三数据快照;
识别模块,用于通过第一规则引擎将所述第一数据快照、第二数据快照以及第三数据快照识别为不同业务事件类型的事件;
聚合模块,用于通过第二规则引擎,将不同业务事件类型的事件聚合,以生成待执行任务;以及
执行模块,用于执行所述待执行任务以进行数据检查。
9.一种电子设备,其特征在于,所述电子设备包括:
处理器;
存储器,其上存储有计算机程序,所述计算机程序被所述处理器运行时执行如权利要求1至7任一项所述的实时业务监控方法。
10.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被所述处理器运行时执行如权利要求1至7任一项所述的实时业务监控方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010036267.1A CN111240940B (zh) | 2020-01-09 | 2020-01-09 | 实时业务监控方法、装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010036267.1A CN111240940B (zh) | 2020-01-09 | 2020-01-09 | 实时业务监控方法、装置、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111240940A true CN111240940A (zh) | 2020-06-05 |
CN111240940B CN111240940B (zh) | 2022-09-16 |
Family
ID=70865037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010036267.1A Active CN111240940B (zh) | 2020-01-09 | 2020-01-09 | 实时业务监控方法、装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111240940B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111930704A (zh) * | 2020-09-29 | 2020-11-13 | 北京每日优鲜电子商务有限公司 | 业务报警设备控制方法、装置、设备和计算机可读介质 |
CN112632056A (zh) * | 2021-03-05 | 2021-04-09 | 蚂蚁智信(杭州)信息技术有限公司 | 一种检验规则的生成方法及装置 |
CN113138898A (zh) * | 2021-04-26 | 2021-07-20 | 上海淇玥信息技术有限公司 | 对业务系统异常进行识别预警的方法、装置和电子设备 |
CN113190415A (zh) * | 2021-05-27 | 2021-07-30 | 北京京东拓先科技有限公司 | 互联网医院系统监控方法、设备、存储介质及程序产品 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107426022A (zh) * | 2017-07-21 | 2017-12-01 | 上海携程商务有限公司 | 安全事件监测方法及装置、电子设备、存储介质 |
CN110069335A (zh) * | 2019-05-07 | 2019-07-30 | 江苏满运软件科技有限公司 | 任务处理系统、方法、计算机设备和存储介质 |
CN110309108A (zh) * | 2019-05-08 | 2019-10-08 | 江苏满运软件科技有限公司 | 数据采集及储存方法、装置、电子设备、存储介质 |
-
2020
- 2020-01-09 CN CN202010036267.1A patent/CN111240940B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107426022A (zh) * | 2017-07-21 | 2017-12-01 | 上海携程商务有限公司 | 安全事件监测方法及装置、电子设备、存储介质 |
CN110069335A (zh) * | 2019-05-07 | 2019-07-30 | 江苏满运软件科技有限公司 | 任务处理系统、方法、计算机设备和存储介质 |
CN110309108A (zh) * | 2019-05-08 | 2019-10-08 | 江苏满运软件科技有限公司 | 数据采集及储存方法、装置、电子设备、存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111930704A (zh) * | 2020-09-29 | 2020-11-13 | 北京每日优鲜电子商务有限公司 | 业务报警设备控制方法、装置、设备和计算机可读介质 |
CN112632056A (zh) * | 2021-03-05 | 2021-04-09 | 蚂蚁智信(杭州)信息技术有限公司 | 一种检验规则的生成方法及装置 |
CN112632056B (zh) * | 2021-03-05 | 2021-05-25 | 蚂蚁智信(杭州)信息技术有限公司 | 一种检验规则的生成方法及装置 |
CN113138898A (zh) * | 2021-04-26 | 2021-07-20 | 上海淇玥信息技术有限公司 | 对业务系统异常进行识别预警的方法、装置和电子设备 |
CN113190415A (zh) * | 2021-05-27 | 2021-07-30 | 北京京东拓先科技有限公司 | 互联网医院系统监控方法、设备、存储介质及程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN111240940B (zh) | 2022-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111240940B (zh) | 实时业务监控方法、装置、电子设备、存储介质 | |
CN110968438B (zh) | 事件消息异步通知方法、装置、电子设备、存储介质 | |
US8959063B2 (en) | Managing incident reports | |
US9135093B2 (en) | Event-driven approach for collecting monitoring data of messaging systems | |
US8291373B2 (en) | Generating LoadRunner scripts | |
CN111309550A (zh) | 应用程序的数据采集方法、系统、设备和存储介质 | |
CN110532322B (zh) | 运维交互方法、系统、计算机可读存储介质及设备 | |
CN108595316A (zh) | 分布式应用的生命周期管理方法、管理器、设备和介质 | |
CN111198892A (zh) | 信息处理方法、装置、电子设备及存储介质 | |
CN111476539A (zh) | 任务监控方法、装置、计算机设备及存储介质 | |
CN111831536A (zh) | 一种自动化测试方法和装置 | |
CN111866767B (zh) | 消息处理方法、装置、电子设备及可读介质 | |
CN112506490A (zh) | 一种接口生成方法、装置、电子设备及存储介质 | |
CN109739724B (zh) | 数据监控方法、系统、电子设备和存储介质 | |
CN113645260A (zh) | 业务重试方法、装置、存储介质及电子设备 | |
CN109684321A (zh) | 数据质量管理方法、装置、电子设备、存储介质 | |
CN112286918B (zh) | 数据快速接入转换的方法、装置、电子设备及存储介质 | |
US11675683B2 (en) | Method, electronic device, and computer program product for monitoring storage system | |
CN114756301A (zh) | 日志处理方法、装置和系统 | |
CN113297516A (zh) | 客户交互界面生成方法、装置和电子设备 | |
US8214846B1 (en) | Method and system for threshold management | |
CN114584616B (zh) | 一种消息推送方法、装置、电子设备及存储介质 | |
CN112084115A (zh) | 软件缺陷的流程化操作方法和装置 | |
CN117827945A (zh) | 数据处理方法及装置、存储介质及电子设备 | |
CN114911762A (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 | ||
EE01 | Entry into force of recordation of patent licensing contract | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20200605 Assignee: Nanjing Manyun Cold Chain Technology Co.,Ltd. Assignor: JIANGSU MANYUN SOFTWARE TECHNOLOGY Co.,Ltd. Contract record no.: X2023980038397 Denomination of invention: Real time business monitoring methods, devices, electronic devices, storage media Granted publication date: 20220916 License type: Common License Record date: 20230724 |