本发明涉及应用软件开发技术领域,更具体地说,涉及一种数据监控方法及装置。
背景技术
为了业务系统的稳定运行,对于系统运行过程中产生数据的监控就变得尤为重要。
目前的监控方案主要是:提前指定待监控的数据源,对该数据源上报的数据进行分析并报警。但是,采用现有的监控方案,每种数据源要分别设置一套监控方案,这就无法满足复杂多样的监控需求。
技术实现要素:
有鉴于此,本发明提供一种数据监控方法及装置,以解决现有针对每种数据源都要设置一套监控方案的问题。技术方案如下:
一种数据监控方法,包括:
根据数据源的类型确定数据接入方式,并按照所述数据接入方式接入所述数据源;
根据所述数据源中数据的类型确定数据分析规则,并按照所述数据分析规则生成所述数据的报警任务;
按照预设报警方式推送所述报警任务的报警信息。
优选的,所述根据数据源的类型确定数据接入方式,包括:
确定所述数据源的类型;
若所述数据源的类型为数据库表,将所述数据源的数据接入方式确定为数据库连接;
若所述数据源的类型为接口,将所述数据源的数据接入方式确定为超文本传输协议;
若所述数据源的类型为互联网协议地址端口,将所述数据源的数据接入方式确定为远程登录。
优选的,所述根据所述数据源中数据的类型确定数据分析规则,并按照所述数据分析规则生成所述数据的报警任务,包括:
在所述数据的类型为文本的情况下,获取所述数据的文本阈值以及文本报错阈值;
判断所述数据是否等于所述文本阈值;
若所述数据不等于所述文本阈值,进行报错,并获取所述数据源在预设时段内的文本报错次数;
判断所述文本报错次数是否小于所述文本报错阈值;
若所述文本报错次数小于所述文本报错阈值,调取上一次生成的报警任务,并在上一次生成的报警任务为异常报警的情况下,生成异常恢复报警任务;
若所述文本报错次数不小于所述文本报错阈值,生成异常报警任务。
优选的,
在所述数据的类型为数值的情况下,获取所述数据的数值允许范围以及数值报错阈值;
判断所述数据是否在所述数值允许范围内;
若所述数据不在所述数值允许范围内,进行报错,并获取所述数据源在预设时段内的数值报错次数;
判断所述数值报错次数是否小于所述数值报错阈值;
若所述数值报错次数小于所述数值报错阈值,调取上一次生成的报警任务,并在上一次生成的报警任务为异常报警的情况下,生成异常恢复报警任务;
若所述数值报错次数不小于所述数值报错阈值,生成异常报警任务。
优选的,所述预设报警方式,包括:短信报警、邮件报警和接口报警中的一种或多种。
优选的,所述按照所述数据接入方式接入所述数据源之后,还包括:
将所述数据源中的数据写入数据收集表。
优选的,所述按照所述数据分析规则生成所述数据的报警任务之后,还包括:
将所述报警任务写入报警任务表。
优选的,所述按照预设报警方式推送报警信息之后,还包括:
将所述报警信息以及所述报警信息的推送结果写入报警结果表。
一种数据监控装置,包括:数据接入模块、任务生成模块和报警推送模块;
所述数据接入模块,用于根据数据源的类型确定数据接入方式,并按照所述数据接入方式接入所述数据源;
所述任务生成模块,用于根据所述数据源中数据的类型确定数据分析规则,并按照所述数据分析规则生成所述数据的报警任务;
所述报警推送模块,用于按照预设报警方式推送所述报警任务的报警信息。
优选的,所述数据接入模块,具体用于:
确定所述数据源的类型;若所述数据源的类型为数据库表,将所述数据源的数据接入方式确定为数据库连接;若所述数据源的类型为接口,将所述数据源的数据接入方式确定为超文本传输协议;若所述数据源的类型为互联网协议地址端口,将所述数据源的数据接入方式确定为远程登录。
相较于现有技术,本发明实现的有益效果为:
以上本发明提供的数据监控方法及装置,可以按照数据源的类型接入数据源,按照数据源中数据的类型对数据进行分析,进而按照预设报警方式推送关于数据报警任务的报警信息。对于不同类型的数据源以及数据源中的数据都可以确定相匹配的监控措施,并应用到不同报警场景。由于支持多种数据源的接入、多维度数据的分析以及多报警方式的扩展,这就可以实现多数据源共用一套监控方案,从而增加了监控的通用性、给后期系统维护带来方便。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的数据监控方法的方法流程图;
图2为本发明实施例提供的数据监控方法的部分方法流程图;
图3为本发明实施例提供的数据监控方法的另一部分方法流程图;
图4为本发明实施例提供的数据监控装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种数据监控方法,该方法的方法流程图如图1所示,包括如下步骤:
s10,根据数据源的类型确定数据接入方式,并按照数据接入方式接入数据源;
以电子商务应用系统为例,在系统正式上线之前,会有大量数据需要监控,例如,监控未处理订单量在指定时间内是否到达指定数量、指定接口反馈错误信息次数是否到达指定次数、指定第三方支付平台响应时长是否到达指定时长等。对于未处理订单量、指定接口以及指定第三方支付平台分属于不同数据源,数据源类型依次为数据库表、接口以及互联网协议地址端口。
对于不同数据源类型,可预先定义不同接入方式来实现接入数据源。比如,对于数据库表,可采用数据库连接技术定时连接;对于接口,可采用超文本传输协议定时调用;对于互联网协议地址端口,可采用远程登录技术,即internet远程登录服务的标准协议定时登录,以测试目标地址的连通性和响应时长等。
以下对数据库连接技术、超文本传输协议以及远程登录技术进行简单介绍:
常用的数据库连接技术为jdbc(javadatabaseconnectivity,java数据库连接)是一种用于执行sql语句的javaapi,可以为多种关系数据库提供统一访问,它由一组用java语言编写的类和接口组成。
超文本传输协议(hypertexttransferprotocol,http协议)是用于从www服务器传输超文本到本地浏览器的传输协议。其采用了请求/响应模型。客户端向服务器发送一个请求,请求头包含请求的方法、url、协议版本、以及包含请求修饰符、客户信息和内容的类似于mime的消息结构。服务器以一个状态行作为响应,响应的内容包括消息协议的版本,成功或者错误编码加上包含服务器信息、实体元信息以及可能的实体内容。
远程登录用于internet会话,基本功能是——允许用户登录进入远程主机系统。起初,它只是让用户的本地计算机与远程计算机连接,从而成为远程主机的一个终端,,它允许授权用户进入网络中的其它机器并且就像用户在现场操作一样。一旦进入主机,用户可以操作主机允许的任何事情,比如:读文件、编辑文件或删除文件等。
此外,为方便管理数据源中的数据,接入数据源之后,可将数据源中的数据写入数据收集表。
s20,根据数据源中数据的类型确定数据分析规则,并按照数据分析规则生成数据的报警任务;
本实施例中,可按照数据的类型确定相应的阈值,并采用相应的比较方式进行分析。
在具体实现过程中,步骤20中“根据数据源中数据的类型确定数据分析规则,并按照数据分析规则生成数据的报警任务”,可以具体采用以下步骤,方法流程图如图2所示:
s201,在数据的类型为文本的情况下,获取数据的文本阈值以及文本报错阈值;
s202,判断数据是否等于文本阈值;若数据不等于文本阈值,则执行步骤s203;
本实施例中,若数据等于文本阈值,则表示数据正常。
s203,进行报错,并获取数据源在预设时段内的文本报错次数;
s204,判断文本报错次数是否小于文本报错阈值;若文本报错次数小于文本报错阈值,则执行步骤s205;若文本报错次数不小于文本报错阈值,则执行步骤s206;
s205,调取上一次生成的报警任务,并在上一次生成的报警任务为异常报警的情况下,生成异常恢复报警任务;
s206,生成异常报警任务。
在具体实现过程中,步骤20中“根据数据源中数据的类型确定数据分析规则,并按照数据分析规则生成数据的报警任务”,还可以具体采用以下步骤,方法流程图如图3所示:
s301,在数据的类型为数值的情况下,获取数据的数值允许范围以及数值报错阈值;
s302,判断数据是否在数值允许范围内;若数据不在数值允许范围内,则执行步骤s303;
本实施例中,若数据在数值允许范围内,则表示数据正常。
s303,进行报错,并获取数据源在预设时段内的数值报错次数;
s304,判断数值报错次数是否小于数值报错阈值;若数值报错次数小于数值报错阈值,则执行步骤s305;若数值报错次数不小于数值报错阈值,则执行步骤s306;
s305,调取上一次生成的报警任务,并在上一次生成的报警任务为异常报警的情况下,生成异常恢复报警任务;
s306,生成异常报警任务。
此外,为记录报警任务,在生成报警任务之后,可将报警任务写入报警任务表。
s30,按照预设报警方式推送报警任务的报警信息。
需要说明的是,预设报警方式包括但不局限于短信报警、邮件报警和接口报警中的一种或多种。
在预设报警方式为短信报警的情况下,查询短信订阅信息,比如,短信订阅号码、短信内容以及短信订阅人等,按照短信订阅信息推送短信;在预设报警方式为邮件报警的情况下,查询邮件订阅信息,比如,邮件订阅邮箱、邮件内容以及邮件订阅人等,按照邮件订阅内容推送邮件;在预设报警方式为接口报警的情况下,查询接口订阅信息,比如,接口订阅地址、接口显示内容等,按照接口订阅信息调用接口。
此外,为记录报警信息以及报警信息的推送结果,可将报警信息及其推送结果写入报警结果表。
以上步骤s201~步骤s206仅仅是本申请实施例公开的步骤s20中“根据数据源中数据的类型确定数据分析规则,并按照数据分析规则生成数据的报警任务”过程的一种优选的实现方式,有关此过程的具体实现方式可根据自己的需求任意设置,在此不做限定。
以上步骤s301~步骤s306仅仅是本申请实施例公开的步骤s20中“根据数据源中数据的类型确定数据分析规则,并按照数据分析规则生成数据的报警任务”过程的一种优选的实现方式,有关此过程的具体实现方式可根据自己的需求任意设置,在此不做限定。
本发明实施例提供的数据监控方法,对于不同类型的数据源以及数据源中的数据都可以确定相匹配的监控措施,并应用到不同报警场景。由于支持多种数据源的接入、多维度数据的分析以及多报警方式的扩展,这就可以实现多数据源共用一套监控方案,从而增加了监控的通用性、给后期系统维护带来方便。
基于上述实施例提供的数据监控方法,本发明实施例则提供一种执行上述数据监控方法的装置,该装置结构示意图如图4所示,包括:数据接入模块10、任务生成模块20和报警推送模块30;
数据接入模块10,用于根据数据源的类型确定数据接入方式,并按照数据接入方式接入数据源;
任务生成模块20,用于根据数据源中数据的类型确定数据分析规则,并按照数据分析规则生成数据的报警任务;
报警推送模块30,用于按照预设报警方式推送报警任务的报警信息。
需要说明的是,预设报警方式包括但不局限于短信报警、邮件报警和接口报警中的一种或多种。
在其他一些实施例中,数据接入模块10,具体用于:
确定数据源的类型;若数据源的类型为数据库表,将数据源的数据接入方式确定为数据库连接;若数据源的类型为接口,将数据源的数据接入方式确定为超文本传输协议;若数据源的类型为互联网协议地址端口,将数据源的数据接入方式确定为远程登录。
在其他一些实施例中,任务生成模块20,具体用于:
在数据的类型为文本的情况下,获取数据的文本阈值以及文本报错阈值;
判断数据是否等于文本阈值;
若数据不等于文本阈值,进行报错,并获取数据源在预设时段内的文本报错次数;
判断文本报错次数是否小于文本报错阈值;
若文本报错次数小于文本报错阈值,调取上一次生成的报警任务,并在上一次生成的报警任务为异常报警的情况下,生成异常恢复报警任务;
若文本报错次数不小于文本报错阈值,生成异常报警任务。
在其他一些实施例中,任务生成模块20,具体用于:
在数据的类型为数值的情况下,获取数据的数值允许范围以及数值报错阈值;
判断数据是否在数值允许范围内;
若数据不在数值允许范围内,进行报错,并获取数据源在预设时段内的数值报错次数;
判断数值报错次数是否小于数值报错阈值;
若数值报错次数小于数值报错阈值,调取上一次生成的报警任务,并在上一次生成的报警任务为异常报警的情况下,生成异常恢复报警任务;
若数值报错次数不小于数值报错阈值,生成异常报警任务。
为方便管理数据源中的数据,在其他一些实施例中,数据接入模块10还用于:
将数据源中的数据写入数据收集表。
为记录报警任务,在其他一些实施例中,任务生成模块20还用于:
将报警任务写入报警任务表
为记录报警信息以及报警信息的推送结果,在其他一些实施例中,报警推送模块30还用于:
将报警信息以及报警信息的推送结果写入报警结果表。
本发明实施例提供的数据监控装置,对于不同类型的数据源以及数据源中的数据都可以确定相匹配的监控措施,并应用到不同报警场景。由于支持多种数据源的接入、多维度数据的分析以及多报警方式的扩展,这就可以实现多数据源共用一套监控方案,从而增加了监控的通用性、给后期系统维护带来方便。
以上对本发明所提供的一种数据监控方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素,或者是还包括为这些过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。