CN117785602A - 一种确定调用关系的方法、装置、设备及介质 - Google Patents
一种确定调用关系的方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN117785602A CN117785602A CN202311661906.3A CN202311661906A CN117785602A CN 117785602 A CN117785602 A CN 117785602A CN 202311661906 A CN202311661906 A CN 202311661906A CN 117785602 A CN117785602 A CN 117785602A
- Authority
- CN
- China
- Prior art keywords
- call
- data set
- calling
- service
- target data
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 230000008569 process Effects 0.000 claims abstract description 16
- 238000012216 screening Methods 0.000 claims abstract description 12
- 238000004590 computer program Methods 0.000 claims description 18
- 238000003860 storage Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 15
- 238000007726 management method Methods 0.000 description 12
- 241001137251 Corvidae Species 0.000 description 7
- 238000012986 modification Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000012423 maintenance Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000009960 carding Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Landscapes
- Telephonic Communication Services (AREA)
Abstract
本申请提供一种确定调用关系的方法、装置、设备及介质,涉及数据处理技术领域,包括:获取业务系统中的应用日志以及当前的建链信息;基于应用日志中各数据所属的业务对各数据进行划分,得到与各业务分别对应的数据集合,数据集合包括的数据中存在用于记录对应业务的配置项调用过程的调用数据;针对每个业务,从业务对应的数据集合中筛选与建链信息相匹配的调用数据,组成与业务对应的目标数据集合;针对每个目标数据集合,基于目标数据集合中至少一个调用数据,确定与目标数据集合对应的配置项的调用关系,调用关系中包括各配置项之间的调用方向,能够动态确定应用上线后业务系统中的不同子系统之间的调用关系。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种确定调用关系的方法、装置、设备及介质。
背景技术
随着总体业务量的快速增长,针对不同业务场景所创建的系统数量逐渐增多,其中部分业务集成于已建成的系统中,使同一个系统中存在多个子系统。因此,不同子系统、公共组件以及外部子系统之间的调用关系也越来越复杂,在对系统中部分节点进行维护时,梳理其涉及的业务越发困难。
相关技术中,通常采用CMDB(Configuration Management Database,配置管理数据库)来体现系统全生命周期的状态和架构情况。这种技术多聚焦在以单个子系统为维度的数据配置中,在目前复杂业务场景下,无法记录当前子系统对周边子系统或组件的影响。
从业务系统上线开始,可以通过平台记录涉及到的子系统,以及子系统中虚拟机、网络设备等配置项的相关信息,纵向体现单个子系统的状态,但无法记录应用上线后业务系统中的不同子系统之间的动态调用情况,因此无法充分发挥CMDB数据的价值。
发明内容
本申请提供一种确定调用关系的方法、装置、设备及介质,能够动态确定应用上线后业务系统中的不同子系统之间的调用关系。
第一方面,本申请实施例提供了一种确定调用关系的方法,包括:
获取业务系统中的应用日志以及当前的建链信息,上述建链信息用于记录上述业务系统中包括的各配置项之间的连接关系;
基于上述应用日志中各数据所属的业务对上述各数据进行划分,得到与各业务分别对应的数据集合,上述数据集合包括的数据中存在用于记录对应业务的配置项调用过程的调用数据;
针对每个业务,从上述业务对应的数据集合中筛选与上述建链信息相匹配的调用数据,组成与上述业务对应的目标数据集合;
针对每个目标数据集合,基于上述目标数据集合中至少一个调用数据,确定与上述目标数据集合对应的配置项的调用关系,上述调用关系中包括各配置项之间的调用方向。
在一种可能的实施方式中,上述组成与上述业务对应的目标数据集合之后,确定与上述目标数据集合对应的配置项的调用关系之前,上述方法还包括:
基于上述目标数据集合对应的业务的标识,确定上述配置管理数据库CMDB中未存储上述目标数据集合对应的调用关系;
上述确定与上述目标数据集合对应的配置项的调用关系之后,上述方法还包括:
以上述目标数据集合对应的业务的标识为索引,将上述调用关系存储在CMDB中。
在一种可能的实施方式中,若上述CMDB中存储上述目标数据集合对应的调用关系,上述方法还包括:
将上述CMDB中存储的调用关系与确定的调用关系进行比对;
若存储的调用关系与确定的调用关系不同,则基于确定的调用关系,对上述CMDB中存储的调用关系进行更新。
在一种可能的实施方式中,上述基于上述目标数据集合中至少一个调用数据,确定与上述目标数据集合对应的配置项的调用关系,包括:
针对上述目标数据集合中的每个调用数据,从上述调用数据中提取关键字段,并基于上述关键字段确定与上述调用数据对应的各个配置项的地址信息;
针对每个地址信息,基于上述地址信息查找是否存在对应的配置项;
若查找到任一地址信息对应的配置项,则基于各调用数据对应的查找结果,从上述各调用数据中筛选查找到对应配置项的目标调用数据;
基于上述目标数据集合中的目标调用数据,确定与上述目标数据集合对应的配置项的调用关系。
在一种可能的实施方式中,上述基于上述地址信息查找是否存在对应的配置项之后,上述方法还包括:
若未查找到任一地址信息对应的配置项,则发送提示信息,上述提示信息中包括上述任一地址信息对应的配置项的标识。
第二方面,本申请实施例提供了一种确定调用关系的装置,包括:
获取模块,用于获取业务系统中的应用日志以及当前的建链信息,上述建链信息用于记录上述业务系统中包括的各配置项之间的连接关系;
划分模块,用于基于上述应用日志中各数据所属的业务对上述各数据进行划分,得到与各业务分别对应的数据集合,上述数据集合包括的数据中存在用于记录对应业务的配置项调用过程的调用数据;
匹配模块,用于针对每个业务,从上述业务对应的数据集合中筛选与上述建链信息相匹配的调用数据,组成与上述业务对应的目标数据集合;
确定模块,用于针对每个目标数据集合,基于上述目标数据集合中至少一个调用数据,确定与上述目标数据集合对应的配置项的调用关系,上述调用关系中包括各配置项之间的调用方向。
第三方面,本申请实施例提供了一种电子设备,包括存储器、处理器及存储在上述存储器上并可在上述处理器上运行的计算机程序,上述处理器执行上述程序时实现本申请上述确定调用关系的方法中的步骤。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本申请上述确定调用关系的方法中的步骤。
第五方面,本申请实施例提供一种计算机程序产品,包括计算机程序,计算机程序存储在计算机可读存储介质中;当内存访问设备的处理器从计算机可读存储介质读取计算机程序时,处理器执行计算机程序,使得内存访问设备执行本申请上述确定调用关系的方法中的步骤。
本申请的有益效果如下:
通过基于业务系统中的应用日志中各数据所属的业务对上述各数据进行划分,确定各业务分别对应的数据集合,实现针对单个业务的数据的获取,使调用关系确定更加精细化;从业务对应的数据集合中筛选与上述建链信息相匹配的调用数据,组成与业务对应的目标数据集合,剔除了无效数据,保证了后续使用的调用数据的有效性;针对每个目标数据集合,基于上述目标数据集合中至少一个调用数据,确定与上述目标数据集合对应的配置项的调用关系,实现了针对指定业务场景的不同子系统间的调用关系的实时确定。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种确定调用关系的方法的流程示意图;
图2为本申请实施例提供的一种可能的数据获取过程的示意图;
图3为本申请实施例提供的一种配置项确定过程的示意图;
图4为本申请实施例提供的一种调用关系存储过程的示意图;
图5为本申请实施例提供的一种可能的调用关系的示意图;
图6为本申请实施例提供的一种确定调用关系的装置的结构示意图;
图7为本申请实施例提供的电子设备的结构示意图。
具体实施方式
为了解决相关技术中,无法记录应用上线后业务系统中的不同子系统之间的动态调用情况的问题,本申请实施例提供了一种确定调用关系的方法、装置、设备及介质。
以下结合说明书附图对本申请作进一步地详细描述。
本申请实施例描述的应用场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着新应用场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。其中,在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
为便于理解,本申请实施例中首先对使用到的术语进行解释:
(1)CMDB:组织IT(Internet Technology,互联网技术)基础结构中配置项(CI)及其关系的数据库。
(2)ULSP(统一日志服务平台):用于系统应用日志的集中采集、管理和分析。
(3)Magpie:一种分布式服务调用中间件,用于提供高性能和透明化远程服务调用方案;可用于Java与Java之间的RPC(Remote Procedure Call,远程过程调用)调用、Java与C之间的binary调用以及GO语言与Java和C的调用。
(4)MAGPIE-CONSOLE(Magpie服务控制台):Magpie组件控制台,用于记录服务名、IP(Internet Protocol,网际互连协议)、状态信息等。
(5)MGW:一款基于Magpie协议的高性能服务框架,为C语言应用提供高性能和透明化远程服务调用方案;可用于Java与C之间的binary调用、Go语言与C的调用、C与C语言的调用;同时也可与UPMESH等服务框架无缝集成。
(6)UPMESH:专用的基础服务设施层,作为独立的可运行单元和可运维对象,为系统开发和运维人员,提供统一易用的应用管理、连接、监控和安全保障能力,支撑公司级大规模服务治理,其在架构上分为控制面板和数据面板两部分。
随着总体业务量的快速增长,针对不同业务场景所创建的系统数量逐渐增多,其中部分业务集成于已建成的系统中,使同一个系统中存在多个子系统。因此,不同子系统、公共组件以及外部子系统之间的调用关系也越来越复杂,在对系统中部分节点进行维护时,梳理其涉及的业务越发困难。
相关技术中,通常采用CMDB来体现系统全生命周期的状态和架构情况,这种技术多聚焦在以单个子系统为维度的数据配置中,在目前复杂业务场景下,无法记录当前子系统对周边子系统或组件的影响。
从业务系统上线开始,可以通过平台记录涉及到的子系统,以及子系统中虚拟机、网络设备等配置项的相关信息,纵向体现单个子系统的状态,但无法记录应用上线后业务系统中的不同子系统之间的动态调用情况,因此无法充分发挥CMDB数据的价值。
在大规模应用部署场景下,不同系统间、硬件设备之间,调用信息的确定一直是数据中心运维领域的难题,针对该问题,相关技术中存在以下几种方案:
一是通过抓取并统计一个周期内的网络流量信息,形成拓扑快照,并分析新版本快照与历史版本快照之间的区别,对差异进行识别判断,从而推荐调整方案,自动同步至CMDB,满足CMDB信息的保鲜需求。
但由于通过网络快照流量统计进行关系识别,会识别到所有的流量,其中包含管理设备的链接、公共组件调用等,其中部分业务场景是无需去调用对应的公共组件和管理设备的,因此,该方案无法根据具体的业务场景来区分调用的情况,精细化程度无法满足现有需求。
二是通过下发数据采集脚本到目标对象服务器运行,执行脚本获取结果数据;对原始数据进行数据清洗,得到CMDB可识别的标准格式数据,调取CMDB的数据回写接口,把数据回写到CMDB中。
但通过下发脚本采集对象的数据,主要用于设备的CMDB数据采集层面,仅适用于系统纵向(即同一系统内)的数据写入,对不同系统间的调用写入具有局限性。
基于上述问题,本申请实施例提供一种确定调用关系的方法、装置、设备及介质,从业务场景出发,通过自动采集应用调用情况,确定CMDB中配置项的调用关系,便于运维人员快速发现节点故障,降低其对业务的影响。
该方法可以由确定调用关系的装置执行,该确定调用关系的装置可以是一个终端设备或用于终端设备的模块,或者是一个服务器或用于服务器的模块。本申请对该方法的执行主体不做限定。
在一些实施例中,本申请上述方法可以应用于CMDB下的大规模云平台部署的场景中,其中所述的配置项可以为是一些硬件设备,比如云平台虚拟机(应用部署最小单元)、物理机、交换机等,本申请对配置的具体内容不做限定,文中的各配置项可以属于同一子系统,或者分别属于不同子系统。
如图1所示,其为本申请实施例提供的确定调用关系的方法的实施流程示意图,具体可以包括以下步骤:
步骤S101,获取业务系统中的应用日志以及当前的建链信息,建链信息用于记录业务系统中包括的各配置项之间的连接关系;
在一些实施例中,确定调用关系的设备在接收到用户触发的调用关系确定指令,或者满足指定触发条件时,获取业务系统的全量日子信息以及建链信息,进行后续的调用关系确定过程。
需要说明的是,本申请实施例对上述调用关系确定过程的触发方式不做限制,同时上述触发条件也可基于需求进行设置,通常可设置为在业务系统上线后即触发该调用关系确定过程。
图2为本申请实施例提供的一种可能的数据获取过程的示意图,如图2所示,在触发调用关系确定过程后,确定调用关系的设备首先创建采集任务,并通过对应工具去获取采集任务对应的数据,以供本地计算节点使用来进行后续的调用关系确定。
在一些实施例中,与采集任务对应数据采集包括日志采集以及建链采集两部分,其中,日志采集可通过ULSP平台实现,在ULSP平台获取应用日志后,将应用日志存储在该ULSP平台中,同时ULSP平台中存在可供本地计算节点调用的接口,以便于后续本地计算节点从该ULSP平台中获取应用日志。可能的,应用日志中包括各个应用组件如Magpie、MGW的调用情况,应用启动时的建链情况等,便于后续根据不同业务场景、交易类型等获取到不同业务的调用情况,使关系的获取更加精细化。
具体实施中,可预先在ULSP平台中配置与应用日志采集相关的配置信息,例如哪些子系统需要进行应用日志采集,哪些子系统无需进行日志应用日志采集,在一些实施例中,ULSP平台提供可供用户查看并操作的界面,用户可通过在该界面上进行选中、输入等操作来进行日志采集相关的配置。
上述建链采集为对建链信息进行采集,建链信息为用于记录各配置之间的连接关系的信息,其中,连接关系包括各配置项之间的网络连接关系,以及实际连接关系,如硬件连接关系;具体实施中,网络连接关系可通过采集当前业务系统的网络快照来确定的。
针对相关技术中通过网络抓包快照的形式获取到的连接关系,精细化程度不够的问题,本申请实施例通过主机层的链接关系(即上述建链信息中的硬件连接关系)、应用日志的梳理、网络设备节点层的流量抓取(即上述建链信息中的网络连接关系)等多个层级获取应用调用关系,实现关系获取更加准确,使梳理的方式层级化、多样化、精细化。
步骤S102,基于应用日志中各数据所属的业务对各数据进行划分,得到与各业务分别对应的数据集合,数据集合包括的数据中存在用于记录对应业务的配置项调用过程的调用数据;
在一些实施例中,可通过配置不同的正则规则,实现基于所属业务对应用日志中的数据进行划分,需要说明的,上述不同的正则规则可基于需求进行设置,例如针对不同类型的业务,配置不同的正则规则。基于配置的正则规则,针对不同业务类型的业务进行查询,筛选出其涉及到的日志数据。
针对相关技术中当单个系统集中于多个业务场景的情况下,指定业务的关系体现不足,无法反映出指定业务场景的调用情况的问题,本申请实施例通过基于业务对数据进行划分,后续基于划分后的数据分别确定对应的调用关系,实现了针对大规模部署复杂场景下,对指定的业务调用关系的添加及维护。
具体地,针对每个业务,基于其对应的正则规则,对应用日志中的数据进行关键数据提取,并对提取的关键数据进行整理,形成与该业务分别对应的数据集合,可能的,该数据集合可以用日志名进行命名。
在具体示例中,当该业务类型为交易订单时,其对应的正则规则可以设置为交易订单对应的订单号、交易账号、交易类型,因此,不同子系统间可通过订单号、交易账号、交易类型等定位同一笔交易订单,关联各个系统、子系统间日志情况,从应用日志中获取与各交易订单对应的关键数据,整理出单笔交易场景中调用的系统配置项情况。
在一些实施例中,上述调用数据是指对应业务的数据集合中涉及到配置项调用的数据,其中可以包括用于记录配置项地位置信息的关键字段,以及调用配置项的时间等相关数据。
步骤S103,针对每个业务,从业务对应的数据集合中筛选与建链信息相匹配的调用数据,组成与业务对应的目标数据集合;
在一些实施例中,由于建链信息中记录有当前业务系统中各配置项的连接关系,而各业务的数据集合中包括至少一个记录配置项调用过程的调用数据,针对每个业务,将其数据集合中的调用数据与建链信息进行比对,确定调用数据记录的配置项的调用过程是否与建链信息中的记录匹配,建链信息中匹配不到则说明配置项之间不存在该调用数据所记录的连接关系,即该调用数据为有误的无效数据,因此,能够排除该业务对应的无效数据,避免后续基于无效数据生成错误的调用关系。
在一些实施例中,针对任一调用数据,若该调用数据记录的配置项的调用过程是否与建链信息中的记录不匹配,则向关联用户(如管理员等)反馈,以通知关联用户进行确认。需要说明的是,该关联用户可基于需求进行设置,例如设置为当前使用该业务系统的用户。
步骤S104,针对每个目标数据集合,基于目标数据集合中至少一个调用数据,确定与目标数据集合对应的配置项的调用关系,调用关系中包括各配置项之间的调用方向;
一种可能的实现方法中,上述基于目标数据集合中至少一个调用数据,确定与目标数据集合对应的配置项的调用关系,具体包括:
针对目标数据集合中的每个调用数据,从调用数据中提取关键字段,并基于关键字段确定与调用数据对应的各个配置项的地址信息;
针对每个地址信息,基于地址信息查找是否存在对应的配置项;
若查找到任一地址信息对应的配置项,则基于各调用数据对应的查找结果,从各调用数据中筛选查找到对应配置项的目标调用数据,并基于目标数据集合中的目标调用数据,确定与目标数据集合对应的配置项的调用关系;
若未查找到任一地址信息对应的配置项,则发送提示信息,提示信息中包括任一地址信息对应的配置项的标识。
在一些具体实施例中,针对目标数据集合中的每个调用数据,从调用数据中提取关键字段时,可基于调用日志对应的协议类型,来确定需要提取的关键字段,在一些实施例中,调用日志对应的协议类型主要包括MGW、Magpie、UPMESH以及套接字(Socket)几类,其中Socket对应的调用数据中直接存储有配置项的地址信息(即IP地址),其对应的关键字段即该IP地址,后续可以直接基于该IP地址查找配置项,而MGW、Magpie、UPMESH对应的调用数据中存储的可以间接确定地址信息的关键字段,在提取到对应的关键字段后,还需基于对应的信息转换表,来将关键字段转换为对应的地址信息。
例如,若调用数据涉及到服务名调用,则基于本地计算节点通过MAGPIE-CONSOLE平台接口查询到对应的地址信息;若调用数据涉及到内网域名,则基于本地计算节点通过内网CDN(Content Delivery Network,内容分发网络)查询到对应的地址信息,如图3所示。
在得到与调用数据对应的各个配置项的地址信息后,基于该地址信息,从CMDB的对应的平台查询是否存在对应的配置项信息,若该地址中存在对应的信息记录,则本地计算节点基于查找到对应配置项的目标调用数据,执行后续确定与目标数据集合对应的配置项的调用关系的步骤;若该地址中存在对应的信息记录,则向管理员反馈提示信息,以提醒管理员确认并补充,进行后续配置项添加等操作。基于此,可以实现对配置项及配置项之间调用关系进行添加、修改、删除,实时计算配置项状态及调用关系,自动识别出不准确的配置项及关系,并进行修改。
另一种可能的实施方式中,上述基于目标数据集合中至少一个调用数据,确定与目标数据集合对应的配置项的调用关系,具体包括:
基于目标数据集合中各调用数据,确定与目标数据集合对应的配置项的调用关系。
同时,执行如下过程:针对目标数据集合中的每个调用数据,从调用数据中提取关键字段,并基于关键字段确定与调用数据对应的各个配置项的地址信息;针对每个地址信息,基于地址信息查找是否存在对应的配置项;若未查找到任一地址信息对应的配置项,则发送提示信息,提示信息中包括任一地址信息对应的配置项的标识。
即确定是否存在对应的配置项,与确定目标数据集合对应的配置项的调用关系,两者独立执行,互不影响。
一种可能的实现方法中,上述组成与业务对应的目标数据集合之后,本申请实施例中,先基于目标数据集合对应的业务的标识,确定配置管理数据库CMDB中是否存储目标数据集合对应的调用关系;
若确定配置管理数据库CMDB中未存储目标数据集合对应的调用关系,则以目标数据集合对应的业务的标识为索引,将调用关系存储在CMDB中;
若CMDB中存储目标数据集合对应的调用关系,则将CMDB中存储的调用关系与确定的调用关系进行比对;若存储的调用关系与确定的调用关系不同,则基于确定的调用关系,对CMDB中存储的调用关系进行更新;
若存储的调用关系与确定的调用关系相同,则认定CMDB中已存在该调用关系,则无需再次进行存储。
在一些具体实施例中,如图4所示,将调用关系存储在CMDB中的过程具体包括,通过本地计算节点进行数据格式调整后反向存入CMDB中,具体地,基于预先设置的调用关系对应的存储格式,整理与调用关系的存储相对应的数据,如该调用关系对应的业务场景、交易类型等字段,将其记录为预设格式的文件,如json格式。然后以该调用关系对应的业务为索引(即主键key),将文件整理为CMDB可识别的格式,并存储CMDB中。随着数据变化,可实时调用CMDB接口写入确定的调用关系,逐步实现对CMDB的数据自动完善,而无需人工维护。
该方法可实现调用关系的全生命周期管理以及自动维护修改,可以对配置项及配置项之间关系进行添加、修改、删除,自动识别出不准确的配置项及关系进行修改,对配置项间调用关系、属性支持自动维护,节约了人力成本。
本申请实施例还提供可供用户访问的界面,可通过实时显示配置项状态及调用关系。
经实验验证,基于上述方式短期累计添加调用关系8万条,为CMDB数据完整性提供了强力支持。
图5为本申请实施例提供的一种可能的调用关系的示意图,如图5所示,在将调用关系存储到CMDB时,可以激励该调用关系对应的方向、源/目标配置项、关系名称、IT项目以及配置项名称,其中,方向用于标识是基于当前配置项调用其他配置项(即目标配置项),或者其他配置项(即源配置项)调用当前配置项;关系名称为当前调用关系的名称,例如传递_传递等;IT项目为当前配置项所属的IT项目,如子系统等;配置项名称即当前配置项的名称,如A、B、C等。
需要说明的是,图5即给出了一种可能的调用关系的存储格式,本申请实施例对调用关系的存世格式不做具体限定,在实施中可基于需求进行设置。
基于上述确定调用关系的方法,可实现如下技术效果:
实现自动化、精确化添加CMDB中应用调用关系,支持调用关系全生命周期管理,关系的增加、删除、修改,可自动生成所有子系统配置项关系网;实现根据指定业务场景,查询到对应业务流涉及到的子系统、硬件设备(配置项);支持横向和纵向两种方式的数据采集和记录,可以针对配置项完整性查漏补缺;实现调用关系的逐步全面化,可实时动态更新应用子系统间的调用关系。
如图6所示,其为本申请实施例提供的确定调用关系的装置的结构示意图,该装置包括:
获取模块61,用于获取业务系统中的应用日志以及当前的建链信息,上述建链信息用于记录上述业务系统中包括的各配置项之间的连接关系;
划分模块62,用于基于上述应用日志中各数据所属的业务对上述各数据进行划分,得到与各业务分别对应的数据集合,上述数据集合包括的数据中存在用于记录对应业务的配置项调用过程的调用数据;
匹配模块63,用于针对每个业务,从上述业务对应的数据集合中筛选与上述建链信息相匹配的调用数据,组成与上述业务对应的目标数据集合;
确定模块64,用于针对每个目标数据集合,基于上述目标数据集合中至少一个调用数据,确定与上述目标数据集合对应的配置项的调用关系,上述调用关系中包括各配置项之间的调用方向。
一种可能的实现方法中,匹配模块63组成与业务对应的目标数据集合之后,确定模块64在确定与上述目标数据集合对应的配置项的调用关系之前,还用于:
基于上述目标数据集合对应的业务的标识,确定上述配置管理数据库CMDB中未存储上述目标数据集合对应的调用关系;
上述确定模块64,具体用于:
以上述目标数据集合对应的业务的标识为索引,将上述调用关系存储在CMDB中。
一种可能的实现方法中,若上述CMDB中存储上述目标数据集合对应的调用关系,上述确定模块64还用于:
将CMDB中存储的调用关系与确定的调用关系进行比对;
若存储的调用关系与确定的调用关系不同,则基于确定的调用关系,对上述CMDB中存储的调用关系进行更新。
一种可能的实现方法中,上述确定模块64,具体用于:
针对上述目标数据集合中的每个调用数据,从上述调用数据中提取关键字段,并基于上述关键字段确定与上述调用数据对应的各个配置项的地址信息;
针对每个地址信息,基于上述地址信息查找是否存在对应的配置项;
若查找到任一地址信息对应的配置项,则基于各调用数据对应的查找结果,从上述各调用数据中筛选查找到对应配置项的目标调用数据;
基于上述目标数据集合中的目标调用数据,确定与上述目标数据集合对应的配置项的调用关系。
一种可能的实现方法中,述确定模块64基于地址信息查找是否存在对应的配置项之后,还用于:
若未查找到任一地址信息对应的配置项,则发送提示信息,上述提示信息中包括上述任一地址信息对应的配置项的标识。
基于同一技术构思,本申请实施例还提供了一种电子设备700,参照图7所示,电子设备700用于实施上述方法实施例记载的设备连通性探测方法,该实施例的电子设备700可以包括:存储器701、处理器702以及存储在上述存储器中并可在上述处理器上运行的计算机程序。上述处理器执行上述计算机程序时实现上述各个确定调用关系的方法实施例中的步骤。
本申请实施例中不限定上述存储器701、处理器702之间的具体连接介质。本申请实施例在图7中以存储器701、处理器702之间通过总线703连接,总线703在图7中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。上述总线703可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器701可以是易失性存储器(volatile memory),例如RAM(random-accessmemory,随机存取存储器);存储器701也可以是非易失性存储器(non-volatile memory),例如只读存储器,快闪存储器(flash memory),HDD(hard disk drive,硬盘)或SSD(solid-state drive,固态硬盘)、或者存储器701是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器701可以是上述存储器的组合。
处理器702,用于实现本申请各种示例性实施方式的确定调用关系的方法。
本申请实施例还提供了一种计算机可读存储介质,存储为执行上述处理器所需执行的计算机可执行指令,其包含用于执行上述处理器所需执行的程序。
在一些可能的实施方式中,本申请提供的确定调用关系的方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当上述程序产品在电子设备上运行时,上述程序代码用于使上述电子设备执行本说明书上述描述的根据本申请各种示例性实施方式的确定调用关系的方法中的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、装置、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种确定调用关系的方法,其特征在于,所述方法包括:
获取业务系统中的应用日志以及当前的建链信息,所述建链信息用于记录所述业务系统中包括的各配置项之间的连接关系;
基于所述应用日志中各数据所属的业务对所述各数据进行划分,得到与各业务分别对应的数据集合,所述数据集合包括的数据中存在用于记录对应业务的配置项调用过程的调用数据;
针对每个业务,从所述业务对应的数据集合中筛选与所述建链信息相匹配的调用数据,组成与所述业务对应的目标数据集合;
针对每个目标数据集合,基于所述目标数据集合中至少一个调用数据,确定与所述目标数据集合对应的配置项的调用关系,所述调用关系中包括各配置项之间的调用方向。
2.如权利要求1所述的方法,其特征在于,所述组成与所述业务对应的目标数据集合之后,确定与所述目标数据集合对应的配置项的调用关系之前,所述方法还包括:
基于所述目标数据集合对应的业务的标识,确定所述配置管理数据库CMDB中未存储所述目标数据集合对应的调用关系;
所述确定与所述目标数据集合对应的配置项的调用关系之后,所述方法还包括:
以所述目标数据集合对应的业务的标识为索引,将所述调用关系存储在CMDB中。
3.如权利要求2所述的方法,其特征在于,若所述CMDB中存储所述目标数据集合对应的调用关系,所述方法还包括:
将所述CMDB中存储的调用关系与确定的调用关系进行比对;
若存储的调用关系与确定的调用关系不同,则基于确定的调用关系,对所述CMDB中存储的调用关系进行更新。
4.如权利要求1~3任一所述的方法,其特征在于,所述基于所述目标数据集合中至少一个调用数据,确定与所述目标数据集合对应的配置项的调用关系,包括:
针对所述目标数据集合中的每个调用数据,从所述调用数据中提取关键字段,并基于所述关键字段确定与所述调用数据对应的各个配置项的地址信息;
针对每个地址信息,基于所述地址信息查找是否存在对应的配置项;
若查找到任一地址信息对应的配置项,则基于各调用数据对应的查找结果,从所述各调用数据中筛选查找到对应配置项的目标调用数据;
基于所述目标数据集合中的目标调用数据,确定与所述目标数据集合对应的配置项的调用关系。
5.如权利要求4所述的方法,其特征在于,所述基于所述地址信息查找是否存在对应的配置项之后,所述方法还包括:
若未查找到任一地址信息对应的配置项,则发送提示信息,所述提示信息中包括所述任一地址信息对应的配置项的标识。
6.一种确定调用关系的装置,其特征在于,所述装置包括
获取模块,用于获取业务系统中的应用日志以及当前的建链信息,所述建链信息用于记录所述业务系统中包括的各配置项之间的连接关系;
划分模块,用于基于所述应用日志中各数据所属的业务对所述各数据进行划分,得到与各业务分别对应的数据集合,所述数据集合包括的数据中存在用于记录对应业务的配置项调用过程的调用数据;
匹配模块,用于针对每个业务,从所述业务对应的数据集合中筛选与所述建链信息相匹配的调用数据,组成与所述业务对应的目标数据集合;
确定模块,用于针对每个目标数据集合,基于所述目标数据集合中至少一个调用数据,确定与所述目标数据集合对应的配置项的调用关系,所述调用关系中包括各配置项之间的调用方向。
7.如权利要求6所述的装置,其特征在于,所述确定模块在确定与所述目标数据集合对应的配置项的调用关系之前,还用于:
基于所述目标数据集合对应的业务的标识,确定所述配置管理数据库CMDB中未存储所述目标数据集合对应的调用关系;
所述确定模块,具体用于:
以所述目标数据集合对应的业务的标识为索引,将所述调用关系存储在CMDB中。
8.如权利要求7所述的装置,其特征在于,若所述CMDB中存储所述目标数据集合对应的调用关系,所述确定模块还用于:
将所述CMDB中存储的调用关系与确定的调用关系进行比对;
若存储的调用关系与确定的调用关系不同,则基于确定的调用关系,对所述CMDB中存储的调用关系进行更新。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,该计算机程序指令被处理器执行时实现权利要求1至5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311661906.3A CN117785602A (zh) | 2023-12-05 | 2023-12-05 | 一种确定调用关系的方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311661906.3A CN117785602A (zh) | 2023-12-05 | 2023-12-05 | 一种确定调用关系的方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117785602A true CN117785602A (zh) | 2024-03-29 |
Family
ID=90396984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311661906.3A Pending CN117785602A (zh) | 2023-12-05 | 2023-12-05 | 一种确定调用关系的方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117785602A (zh) |
-
2023
- 2023-12-05 CN CN202311661906.3A patent/CN117785602A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110245078B (zh) | 一种软件的压力测试方法、装置、存储介质和服务器 | |
CN112910945B (zh) | 请求链路跟踪方法和业务请求处理方法 | |
CN108234170B (zh) | 一种服务器集群的监控方法和装置 | |
CN106980699B (zh) | 一种数据处理平台和系统 | |
CN110928772A (zh) | 一种测试方法及装置 | |
CN109308227B (zh) | 故障检测控制方法及相关设备 | |
CN105468720A (zh) | 集成分布式数据处理系统的方法、相应系统及其数据处理方法 | |
US20130066869A1 (en) | Computer system, method of managing a client computer, and storage medium | |
CN110928851B (zh) | 处理日志信息的方法、装置、设备及存储介质 | |
CN106021370A (zh) | 内存数据库实例的管理方法及装置 | |
CN114791846B (zh) | 一种针对云原生混沌工程实验实现可观测性的方法 | |
CN112506969A (zh) | 一种bmc地址查询方法、系统、设备及可读存储介质 | |
CN105045905A (zh) | 一种基于全文检索的日志维护方法及系统 | |
CN117389830A (zh) | 集群日志采集方法、装置、计算机设备及存储介质 | |
CN115827380A (zh) | 云平台监控方法及云平台监控系统 | |
CN111949607A (zh) | 一种udt文件的监控方法、系统和装置 | |
CN113672692B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN114629949A (zh) | 业务监控方法、电子设备及计算机存储介质 | |
CN106649000A (zh) | 实时处理引擎的故障恢复方法及相应的服务器 | |
US20190097887A1 (en) | Modifying distributed application based on cloud diagnostic data | |
CN110309206B (zh) | 订单信息采集方法及系统 | |
CN112463549A (zh) | 云平台的审计方法、装置、设备及计算机可读存储介质 | |
CN117785602A (zh) | 一种确定调用关系的方法、装置、设备及介质 | |
CN112579552A (zh) | 日志存储及调用方法、装置及系统 | |
CN114598604B (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 |