一种基于场景标识的全链路监测方法、装置、设备及存储介质与流程

摘要: 本发明涉及电力信息,尤其涉及一种基于场景标识的全链路监测方法、装置、设备及存储介质。背景技术:1、随着电力数字化转型向纵深推进,adms(advanceddis...
一种基于场景标识的全链路监测方法、装置、设备及存储介质与流程

本发明涉及电力信息,尤其涉及一种基于场景标识的全链路监测方法、装置、设备及存储介质。

背景技术:

1、随着电力数字化转型向纵深推进,adms(advanced distribution managementsystem,高级配电管理系统)作为配电自动化云主站的核心组成部分,其功能迭代与业务拓展不断加速,需与mdm(master data management,主数据管理系统)、gis(geographicinformation system,地理信息系统)、ifs(industrial and financial systems,工业和金融系统)、derms(distributed energy resource management system,分布式能源管理系统)等多个外部异构系统进行高频多源数据交互,交互形式涵盖restful api调用、消息队列投递、数据库直连、ftp(file transfer protocol,文件传输协议)文件传输等多种协议融合模式,形成了异构化、复杂化、高耦合的多源链路拓扑结构。

2、相较于传统单一链路的监测,adms多源异构链路的监测对链路监测的精准性、实时性、可靠性及高并发承载能力有很高的要求,然而当前行业内尚未形成成熟的解决方案;具体的,对adms多源异构链路的监测工作现面临如下问题,严重制约运维效能提升与系统安全稳定运行,包括:

3、多源链路上下文割裂,故障定位精准度低:不同数据源、不同交互协议的链路缺乏统一的上下文关联标识,且多异构系统的协议标准不统一、数据格式异构,导致同一业务流程涉及的api(application programming interface,应用程序编程接口)调用、消息传递、数据库写入、ftp文件同步等操作相互独立,无统一标识进行关联绑定。而且跨系统、跨协议的链路节点分散,标识透传易丢失、不连贯,一旦出现数据延迟、接口超时、消息丢失、数据传输不完整等异常问题,无法快速追溯整个业务流程的执行轨迹,只能依赖人工逐系统、逐环节比对日志,排查效率低下、响应滞后,且漏判率高。

4、链路数据采集侵入性强,覆盖范围不全面:传统监测手段需人工在业务代码中进行埋点开发,侵入核心业务逻辑,不仅大幅增加开发与维护成本,还易引发主业务流程卡顿、数据丢失等风险,严重影响adms系统的运行稳定性;同时,多源交互环节分散,不同协议、不同数据源的采集方式不统一,传统采集方案无法实现多源交互全环节全覆盖采集,导致监测数据碎片化、格式异构,无法形成完整的链路运行视图,难以支撑全流程故障诊断。

5、高并发适应性不足,数据存储与查询效能低下:adms多源异构数据交互场景下,链路日志数据量大、生成频率高,传统同步写入方式会占用大量主业务资源,严重影响系统运行性能;且日志数据缺乏标准化结构化处理,不同数据源的日志格式差异大,未建立高效的索引机制,导致日志查询与聚合分析效率低下,无法满足高并发场景下的实时监测与快速溯源需求,甚至会出现日志丢失、查询超时等问题。

6、态势感知能力薄弱,异常响应与运维协同滞后:现有监测方案多聚焦于单点性能指标(例如cpu使用率、接口qps、服务可用性等),缺乏对多源链路的整体聚合分析与全景化可视化展示,无法直观呈现多源数据流向、链路拓扑关系及各节点运行状态,运维人员难以快速把控链路整体运行态势;同时,异常识别依赖人工判断,多源链路异常类型多样(例如超时、失败、数据丢失、对账不一致等),人工识别效率低、漏判率高,无法实现异常行为的主动预警与精准定位,导致问题处置不及时,运维协同效率低,难以适应配电自动化云主站高质量运维的发展需求。

7、当前实施的监测方案多聚焦于单点性能指标,缺乏对业务流程级的端到端可观测性支撑,并且现有方案均未针对上述问题的破解难点进行针对性设计,无法突破多协议兼容、无侵入采集、高并发承载、智能化聚合等多重技术瓶颈。

8、因此,需要提供更可靠的方案。

技术实现思路

1、本发明的目的在于克服现有技术中的不足,提供一种基于场景标识的全链路监测方法、装置、设备及存储介质,可以实现多源链路的统一追踪、无侵入采集、高效存储和可视化展示,进而为adms多源数据交互的智能高效化提供支撑。

2、为达到上述目的,本发明采用下述技术方案实现的:

3、一方面,本发明提供了一种基于场景标识的全链路监测方法,所述方法包括:

4、在业务请求入口处,接收多异构业务系统发送的业务请求,并且针对所述业务请求用于执行的多个业务场景,分别生成对应的全局场景标识;

5、通过多维度透传信息,将每个全局场景标识在对应业务全链路各个环节中透传,以及基于spring aop与自定义注解机制,并通过多维度组件分别采集多个业务全链路各个环节对应的业务信息,得到多源链路节点数据;

6、采用异步处理模型,以非阻塞方式将所述多源链路节点数据批量写入,存储至数据库分区表中,得到多源链路节点日志;其中,所述多源链路节点日志包括全局场景标识,以建立基于所述全局场景标识的索引;

7、根据每个全局场景标识对应的多源链路节点日志的聚合结果,构建多源链路拓扑图;

8、执行多维度检索与穿透式分析,获取多维度监测数据,并转化为多维度监测视图;

9、显示所述多源链路拓扑图和所述多维度监测视图,以使用户查看多源链路运行态势。

10、在一些可能的实施方式中,所述全局场景标识采用下述方式生成:

11、随机生成初始唯一标识;

12、利用目标哈希函数,并根据获取的服务唯一标识、生成时间戳和随机数,生成目标哈希值;

13、根据所述初始唯一标识和所述目标哈希值,生成所述全局场景标识,如下式所示:

14、;

15、其中,表示全局场景标识,用于生成初始唯一标识,表示服务唯一标识,表示生成时间戳,表示随机数。

16、在一些可能的实施方式中,所述多维度组件包括api拦截组件、消息监听组件、数据库拦截组件和ftp监控组件;所述多源链路节点信息包括多个业务全链路中分别对应的api运行状态指标、消息队列交互指标、数据库操作指标和文件传输指标;

17、所述基于spring aop与自定义注解机制,并通过多维度组件分别采集多个业务全链路各个环节对应的业务信息,得到多源链路节点数据,包括:

18、根据在每个业务场景的核心业务上添加的自定义注解,触发aop切面拦截,以对业务逻辑零侵入埋点;

19、并且通过api拦截组件采集每个业务全链路中api调用通道的api运行状态指标,并与对应的全局场景标识绑定;

20、通过消息监听组件采集每个业务全链路中消息队列通道的消息队列交互指标,并与对应的全局场景标识绑定;

21、通过数据库拦截组件采集每个业务全链路中数据库操作通道的数据库操作指标,并与对应的全局场景标识绑定;

22、通过ftp监控组件采集每个业务全链路中文件传输通道的文件传输指标,并与对应的全局场景标识绑定。

23、在一些可能的实施方式中,所述采用异步处理模型,以非阻塞方式将所述多源链路节点数据批量写入,存储至数据库分区表中,得到多源链路节点日志,包括:

24、将所述多源链路节点数据封装为标准化结构化的多源链路节点日志实体;

25、对所述多源链路节点日志实体进行序列化处理,转化为多源链路节点日志数据;

26、采用异步处理模型,以非阻塞方式将所述多源链路节点日志数据批量写入,存储至数据库分区表中,得到多源链路节点日志;其中,所述多源链路节点日志还包括数据源类型和操作类型。

27、在一些可能的实施方式中,所述根据每个全局场景标识对应的多源链路节点日志的聚合结果,构建多源链路拓扑图,包括:

28、根据所述每个全局场景标识,对所述多源链路节点日志进行聚合分析,得到所述每个全局场景标识对应的多源链路节点日志的聚合结果;

29、将所述聚合结果按照时间序列进行重建,得到业务执行路径;

30、根据所述业务执行路径,构建所述多源链路拓扑图。

31、在一些可能的实施方式中,所述方法还包括:

32、扫描所述多源链路节点日志,并基于链路健康度评估模型和多维度异常识别规则,进行链路异常模式识别处理,得到链路异常模式识别结果;

33、根据所述链路异常模式识别结果,触发多通道协同告警,并且突出显示异常链路;

34、根据所述多源链路节点日志和所述链路异常模式识别结果,结合历史运行数据,生成链路质量分析报告。

35、在一些可能的实施方式中,所述扫描所述多源链路节点日志,并基于链路健康度评估模型和多维度异常识别规则,进行链路异常模式识别处理,得到链路异常模式识别结果,包括:

36、扫描所述多源链路节点日志,并基于链路健康度评估模型,确定每个业务链路对应的链路健康度分数;其中,所述链路健康度评估模型如下式所示:

37、;

38、其中,表示链路健康度分数,表示链路调用成功率,表示链路超时率,表示链路错误率,、和分别表示第一权重系数、第二权重系数和第三权重系数;

39、根据所述每个业务链路对应的链路健康度分数以及多维度异常识别规则,进行链路异常模式识别处理,得到链路异常模式识别结果。

40、另一方面提供了一种基于场景标识的全链路监测装置,所述装置包括:

41、场景标识生成模块,用于接收多异构业务系统发送的业务请求,并且针对所述业务请求用于执行的多个业务场景,分别生成对应的全局场景标识;

42、数据采集模块,用于通过多维度透传信息,将每个全局场景标识在对应业务全链路各个环节中透传,以及基于spring aop与自定义注解机制,并通过多维度组件分别采集多个业务全链路各个环节对应的业务信息,得到多源链路节点数据;

43、日志生成模块,用于采用异步处理模型,以非阻塞方式将所述多源链路节点数据批量写入,存储至数据库分区表中,得到多源链路节点日志;其中,所述多源链路节点日志包括全局场景标识,以建立基于所述全局场景标识的索引;

44、视图生成模块,用于根据每个全局场景标识对应的多源链路节点日志的聚合结果,构建多源链路拓扑图;执行多维度检索与穿透式分析,获取多维度监测数据,并转化为多维度监测视图;

45、视图显示模块,用于显示所述多源链路拓扑图和所述多维度监测视图,以使用户查看多源链路运行态势。

46、另一方面提供了一种电子设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令和至少一段程序,所述至少一条指令和所述至少一段程序由所述处理器加载并执行以实现如上所述的基于场景标识的全链路监测方法。

47、另一方面提供了一种计算机可读存储介质,所述计算机存储介质中存储有至少一条指令和至少一段程序,所述至少一条指令和所述至少一段程序由处理器加载并执行以实现如上所述的基于场景标识的全链路监测方法。

48、与现有技术相比,本发明所达到的有益效果:

49、本发明中,通过在业务请求入口处,接收多异构业务系统发送的业务请求,并且针对业务请求用于执行的多个业务场景,分别生成对应的全局场景标识,可以通过全局场景标识实现全局场景标识跨协议、跨系统全环节贯通;接着通过多维度透传信息,将每个全局场景标识在对应业务全链路各个环节中透传,可以实现跨协议、跨服务、跨组件、跨数据源的全链路环节贯通,进而实现统一业务流程的各环节操作关联追溯,以此便于故障追溯;并且可以保障场景标识透传的可靠性与透明性;以及基于spring aop与自定义注解机制,并通过多维度组件分别采集多个业务全链路各个环节对应的业务信息,得到多源链路节点数据,可以实现对业务逻辑零侵入的自动埋点,并且可以实现多源交互各环节的数据全覆盖采集,以确保数据采集的全面性和完整性;接着采用异步处理模型,以非阻塞方式将多源链路节点数据批量写入,存储至数据库分区表中,得到多源链路节点日志,其中,多源链路节点日志包括全局场景标识,以建立基于全局场景标识的索引,可以保障高并发场景下数据存储的高效性与可靠性,并且可以提升数据查询效率;接着根据每个全局场景标识对应的多源链路节点日志的聚合结果,构建多源链路拓扑图,可以实现多源链路拓扑的直观呈现;以及执行多维度检索与穿透式分析,获取多维度监测数据,并转化为多维度监测视图;显示多源链路拓扑图和多维度监测视图,以使用户查看多源链路运行态势,可以实现链路运行态势的全景化感知,以及实现链路运行态势的可视化和可追溯,从而便于用户查看以及提升运维效率;从而实现贯穿多系统、多协议、多组件、多数据源的全链路监测,并且以业务场景为锚点实现统一标识、透明传递、数据采集与聚合,可以从整体上确定多源数据交互过程的状态变化,实现链路可追溯、性能可量化等能力,进而可以为配电自动化云主站的稳定运行与高质量运维提供技术支撑。