System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及业务故障预警,具体涉及一种流数据的系统故障预警及业务影响范围评估方法及系统。
技术介绍
1、随着业务的快速发展,系统架构和服务数量变得庞大而复杂,同时数据也呈现快速增长及多样性的态势。同时,随着大数据和实时数据处理技术的发展,电力领域对业务系统故障预测实时性及高效性提出新的挑战。当生产业务发生故障时,作为公司运营、研发等人员往往希望第一时间了解故障影响范围并第一时间进行修复,避免因故障导致用户感知并进行投诉,故障会严重影响用户体验及公司形象,以往出现故障都是通过客诉了解到系统出现问题,并召集各方人员组织排查、梳理影响范围,当完成以上工作,往往需要几十分钟,甚至几个小时时间,而故障导致的影响是不可挽回的。
2、由于不同的业务场景具有较大的故障检测策略差异,且涉及的数据字段、数据类型也各不相同,这种复杂性在大数据量下尤为显著,导致了难以抽象出一个既稳定可靠又安全的任务计算模型。其次,精确评估业务影响范围不仅依赖于可靠的规则引擎设计,而且在实际操作中,对于接口、应用及业务关系图谱的生成设计改造成本高昂,这使得快速有效地实践落地变得困难重重。
3、cn110807602a公开了一种基于大数据的电力调度系统故障检测方法,利用大数据技术采集用户日常用电数据,以此与用户端用电进行对比,一旦出现异常,则有两种情况:一是电力调度端、二是用户端。当出现异常时再对调度端的检测设备进行启动,从而分区域分类别进行检测,排查问题。这样就减少了cpu的占用,也能够在问题发生的第一时间及时排查问题和故障。假如不是电力调度端
4、该方案的不足之处主要体现在以下几个方面:
5、首先,所检测的数据维度较为单一,导致检测精确度不够精确。该技术仅通过一次数据采集及对比结果进行故障监测,因此存在误报的概率。其次,该技术缺乏一定的时效性。由于其通过分区域、分类别进行检测,存在先后顺序,这会导致在故障发生后到发现故障点之间存在一定的延时性。最后,该技术无法准确判断故障的具体影响范围。虽然它能够区分是电力调度端或用电端出现了故障,但无法具体检测故障所影响的具体范围。
技术实现思路
1、针对现有技术的不足,本专利技术旨在提供一种流数据的系统故障预警及业务影响范围评估方法及系统。
2、为了实现上述目的,本专利技术采用如下技术方案:
3、流数据的系统故障预警及业务影响范围评估方法,包括如下步骤:
4、s1、请求拦截模块拦截到业务请求后,生成或获取请求头的业务请求唯一标识,然后请求拦截模块将业务请求及业务请求唯一标识向日志生成模块进行传递;
5、s2、业务请求进入日志生成模块后,日志生成模块获取业务请求的请求时间、接口信息和业务请求唯一标识并将业务请求的请求时间、接口信息和业务请求唯一标识输出到对应的应用日志文件中,探针实时将该应用日志文件中的日志数据采集到kafka组件及日志系统上;
6、s3、业务请求进入链路解析模块,链路解析模块根据业务请求唯一标识进行过滤和聚合,并按照时间进行排序确定请求顺序,然后根据应用和应用之间的业务关系以及业务请求顺序,实时生成业务调用关系链路,通过知识图谱展现给用户;
7、s4、接口解析模块通过在日志系统针对单一应用的接口进行聚合查询,获取该应用下对应的接口信息,形成接口和应用的业务映射关系线;
8、s5、job任务处理模块通过kafka组件实时读取应用的日志数据,利用滑动时间窗口函数对日志数据进行筛选、过滤和聚合,按照单一或多个维度对应用的日志数据进行解析,并将解析结果数据传递给规则引擎模块;
9、s6、规则引擎模块接收到job任务处理模块的解析结果数据后,按照预先定制的预警策略进行数据匹配,当触发阈值后,规则引擎模块按照当前应用或接口信息去关联对应的业务调用关系线,生成业务影响范围,然后将预警内容及业务影响范围输出至预警模块;
10、s7、预警模块接收到规则引擎模块发送的预警内容及业务影响范围,通过指定的预警渠道将预警内容推送至相应预警组或人,并将关联业务影响范围的业务调用关系线及节点在业务调用关系链路的知识图谱上进行颜色标注,呈现给前台用户查看。
11、本专利技术还提供一种实现上述方法的系统,包括请求拦截模块、日志生成模块、业务链路解析模块、接口解析模块、job任务处理模块、规则引擎模块和预警模块;
12、请求拦截模块用于对业务请求进行拦截,生成或获取请求头的业务请求唯一标识;
13、日志生成模块用于从业务请求中获取业务请求的请求时间、接口信息和业务请求唯一标识并输出到应用日志文件中,并通过探针实时将该应用日志文件中的日志数据采集到kafka组件及日志系统上;
14、链路解析模块用于根据业务请求唯一标识进行过滤和聚合,并按照时间进行排序确定请求顺序,然后根据应用和应用之间的业务关系以及业务请求顺序,实时生成业务调用关系链路,并通过知识图谱展现给用户;
15、接口解析模块用于在日志系统针对单一应用的接口进行聚合查询,获取该应用下对应的接口信息,形成接口和应用的业务映射关系线;
16、job任务处理模块用于通过kafka组件实时读取应用日志数据,利用滑动时间窗口函数对日志数据进行筛选、过滤、聚合,按照预设的多个维度对应用的日志数据进行解析,并将解析结果数据传递给规则引擎模块;
17、规则引擎模块用于在接收到job任务处理模块的解析结果数据后,按照预先定制的单一或多个维度叠合的预警策略进行数据匹配,当触发阈值后,规则引擎模块按照当前应用或接口信息去关联对应的业务调用关系线,生成业务影响范围,然后将预警内容及业务影响范围输出至预警模块;
18、预警模块用于根据预警内容及业务影响范围,通过指定的预警渠道将预警内容推送至相应预警组或人,并将关联业务影响范围的业务调用关系线及节点在业务调用关系链路的知识图谱上进行颜色标注,呈现给前台用户查看。
19、进一步地,所述请求拦截模块采用spring拦截器。
20、进一步地,日志生成模块为嵌入日志agent的dubbo应用;业务请求进入dubbo应用后,由dubbo应用中的dubbo过滤器获取业务请求的请求时间、接口信息和业务请求唯一标识并将业务请求的请求时间、接口信息和业务请求唯一标识输出到对应的应用日志文件中。
21、本专利技术的有益效果在于:
22、1、本专利技术通过job任务处理模块可以实现在大数据量下对业务故障的实时性、多维度检测。通过job任务处理模块能够筛选、过滤和聚合数据,在同比、环比、偏差值等多个维度上进行实时分析,有效解决了故障发现的高效性和精准度问题,提高运营人员在排查故障、解决故障时的时效性。
23、2、本专利技术通过规则引擎模块可以定制个性化的预警策略,并可以基于单一或多维策略叠加作为触发条件。一旦业务系统发生故障,规则本文档来自技高网...
【技术保护点】
1.流数据的系统故障预警及业务影响范围评估方法,其特征在于,包括如下步骤:
2.一种实现权利要求1所述方法的系统,其特征在于,包括请求拦截模块、日志生成模块、业务链路解析模块、接口解析模块、JOB任务处理模块、规则引擎模块和预警模块;
3.根据权利要求2所述的系统,其特征在于,所述请求拦截模块采用Spring拦截器。
4.根据权利要求2所述的系统,其特征在于,日志生成模块为嵌入日志agent的DUBBO应用;业务请求进入DUBBO应用后,由DUBBO应用中的DUBBO过滤器获取业务请求的请求时间、接口信息和业务请求唯一标识并将业务请求的请求时间、接口信息和业务请求唯一标识输出到对应的应用日志文件中。
【技术特征摘要】
1.流数据的系统故障预警及业务影响范围评估方法,其特征在于,包括如下步骤:
2.一种实现权利要求1所述方法的系统,其特征在于,包括请求拦截模块、日志生成模块、业务链路解析模块、接口解析模块、job任务处理模块、规则引擎模块和预警模块;
3.根据权利要求2所述的系统,其特征在于,所述请求拦截模块采用...
【专利技术属性】
技术研发人员:张长伟,何通,欧阳鹏,张亦超,王继锋,赵赫赫,李鑫源,王语杰,康君瑞,乔子真,
申请(专利权)人:国网汇通金财北京信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。