CN113704016A - 云功能组件诊断方法、装置、设备、存储介质及程序产品 - Google Patents

云功能组件诊断方法、装置、设备、存储介质及程序产品 Download PDF

Info

Publication number
CN113704016A
CN113704016A CN202110988826.3A CN202110988826A CN113704016A CN 113704016 A CN113704016 A CN 113704016A CN 202110988826 A CN202110988826 A CN 202110988826A CN 113704016 A CN113704016 A CN 113704016A
Authority
CN
China
Prior art keywords
cloud
target
component
diagnosis
target cloud
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
Application number
CN202110988826.3A
Other languages
English (en)
Other versions
CN113704016B (zh
Inventor
梁祥泽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202110988826.3A priority Critical patent/CN113704016B/zh
Publication of CN113704016A publication Critical patent/CN113704016A/zh
Application granted granted Critical
Publication of CN113704016B publication Critical patent/CN113704016B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0718Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an object-oriented system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)
  • Testing Or Calibration Of Command Recording Devices (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本公开提供了一种云功能组件诊断方法、装置、电子设备、计算机可读存储介质及计算机程序产品,涉及云服务、云平台,云计算、故障自动诊断等技术领域。该方法包括:响应于诊断指令被触发,根据诊断指令确定作为诊断对象的目标云功能组件;确定与目标云功能组件的功能特性对应的诊断测试包;下发诊断测试包至目标云功能组件;响应于在与目标云功能组件对应的预设时长内接收到与诊断测试包对应的期望响应包,确定目标云功能组件处于正常运行状态。该方法所提供的诊断方式更加主动、能够避免对处于假死状态的云功能组件所产生的误判,且也能确保诊断结果更具有时效性。

Description

云功能组件诊断方法、装置、设备、存储介质及程序产品
技术领域
本公开涉及状态诊断技术领域,具体涉及云服务、云平台,云计算、故障自动诊断等技术领域,尤其涉及一种云功能组件诊断方法、装置、电子设备、计算机可读存储介质及计算机程序产品。
背景技术
随着各种服务被迁移上“云端”,能够借助集中的服务器集群提供庞大的运算资源,而这些运算资源则可以被云端构建为各种云功能组件,进而通过调用和组合各云功能组件来满足用户的各式需求。
在此基础上,云功能组件由于是基于通用运算资源构建出的虚拟功能组件,没有对应的硬件实体,因此就需要采用与之匹配的诊断方式来确定其运行状态,即是否处于正常运行状态,以根据其运行状态对其相应的处理。
发明内容
本公开实施例提出了一种云功能组件诊断方法、装置、电子设备、计算机可读存储介质及计算机程序产品。
第一方面,本公开实施例提出了一种云功能组件诊断方法,包括:响应于诊断指令被触发,根据诊断指令确定作为诊断对象的目标云功能组件;确定与目标云功能组件的功能特性对应的诊断测试包;下发诊断测试包至目标云功能组件;响应于在与目标云功能组件对应的预设时长内接收到与诊断测试包对应的期望响应包,确定目标云功能组件处于正常运行状态。
第二方面,本公开实施例提出了一种云功能组件诊断装置,包括:诊断对象确定单元,被配置成响应于诊断指令被触发,根据诊断指令确定作为诊断对象的目标云功能组件;诊断测试包确定单元,被配置成确定与目标云功能组件的功能特性对应的诊断测试包;诊断测试包下发单元,被配置成下发诊断测试包至目标云功能组件;第一运行状态判定单元,被配置成响应于在与目标云功能组件对应的预设时长内接收到与诊断测试包对应的期望响应包,确定目标云功能组件处于正常运行状态。
第三方面,本公开实施例提供了一种电子设备,该电子设备包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,该指令被至少一个处理器执行,以使至少一个处理器执行时能够实现如第一方面中任一实现方式描述的云功能组件诊断方法。
第四方面,本公开实施例提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行时能够实现如第一方面中任一实现方式描述的云功能组件诊断方法。
第五方面,本公开实施例提供了一种包括计算机程序的计算机程序产品,该计算机程序在被处理器执行时能够实现如第一方面中任一实现方式描述的云功能组件诊断方法。
本公开实施例提供的云功能组件诊断方法包括:响应于诊断指令被触发,根据诊断指令确定作为诊断对象的目标云功能组件;确定与目标云功能组件的功能特性对应的诊断测试包;下发诊断测试包至目标云功能组件;响应于在与目标云功能组件对应的预设时长内接收到与诊断测试包对应的期望响应包,确定目标云功能组件处于正常运行状态。
本公开实施例根据被触发的诊断指令确定作为诊断对象的目标云功能组件,然后根据目标云功能组件的功能特性来确定与之功能特性匹配的诊断测试包,并将诊断测试包下发至目标云功能组件,从而得以能够根据目标云功能组件对诊断测试包的响应情况来确定其当前所处的真实运行状态。相较于常规的对功能组件的工作日志、数据产出进行分析所实现的诊断方式,本公开所提供的诊断方式更加主动、能够避免对处于假死状态的云功能组件所产生的误判,且也能确保诊断结果更具有时效性。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
图1是本公开可以应用于其中的示例性***架构;
图2为本公开实施例提供的一种云功能组件诊断方法的流程图;
图3为本公开实施例提供的一种触发生成诊断指令的方法的流程图;
图4为本公开实施例提供的另一种触发生成诊断指令的方法的流程图;
图5为本公开实施例提供的一种根据功能特性确定诊断测试包的方法的流程图;
图6为本公开实施例提供的一种异常运行状态判定及处理方法的流程示意图;
图7为本公开实施例提供的一种云功能组件诊断装置的结构框图;
图8为本公开实施例提供的一种适用于执行云功能组件诊断方法的电子设备的结构示意图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
图1示出了可以应用本公开的云功能组件诊断方法、装置、电子设备及计算机可读存储介质的实施例的示例性***架构100。
如图1所示,***架构100可以包括云功能组件101、102、103,网络104和服务器105。网络104用以在云功能组件101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
云功能组件101、102、103可以通过网络104与服务器105交互,例如发送组件参数或接收指令等。云功能组件101、102、103和服务器105上可以安装有各种用于实现两者之间进行信息通讯的应用,例如功能组件诊断类应用、功能组件配置类应用、数据传输类应用等。
云功能组件101、102、103通常是基于云端服务器资源构建出的虚拟功能组件,服务器105可以是硬件,也可以是软件。当服务器105为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器;服务器为软件时,可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块,在此不做具体限定。
服务器105通过内置的各种应用可以提供各种服务,以可以响应于运行状态诊断指令对诊断对象进行诊断的功能组件诊断类应用为例,服务器105在运行该功能组件诊断类应用时可实现如下效果:首先,在诊断指令被触发后,根据诊断指令确定作为诊断对象的目标云功能组件(例如云功能组件101);然后,确定与目标云功能组件的功能特性对应的诊断测试包;接着,下发诊断测试包至目标云功能组件;最后,在与目标云功能组件对应的预设时长内接收到与诊断测试包对应的期望响应包的情况下,确定目标云功能组件处于正常运行状态,反之则可以确定目标云功能组件处于异常运行状态。
本公开后续各实施例所提供的云功能组件诊断方法一般由对云功能组件具有管控能力的服务器105来执行,相应地,云功能组件诊断装置一般也设置于服务器105中。
应该理解,图1中的云功能组件、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的云功能组件、网络和服务器。
请参考图2,图2为本公开实施例提供的一种云功能组件诊断方法的流程图,其中流程200包括以下步骤:
步骤201:响应于诊断指令被触发,根据诊断指令确定作为诊断对象的目标云功能组件;
本步骤旨在由云功能组件诊断方法的执行主体(例如图1所示的服务器105)在诊断指令被触发时,根据诊断指令确定作为诊断对象的目标云功能组件。
触发诊断指令的方式有多种,例如指定时间触发、固定时间间隔触发、临时指定触发、基于组件更新情况的自动式触发、按功能组件的诊断顺序触发、基于距上一次诊断时长的均衡式触发等。
为使能够基于诊断指令确定出作为诊断对象的目标云功能组件,使得诊断指令中至少要包含有能够用于唯一确定到诊断对象的身份信息,例如组件编号、组件编码等,还可以根据实际需求在指令中添加指令的触发原因、触发时间、当前时段内的指令触发次数等信息,此处不做具体限定,可根据实际需求自行选择。
作为诊断对象的目标云功能组件的数量可以是1个,也可以是多个,在作为诊断对象的目标云功能组件的数量为多个时,还需要考虑不同目标云功能组件之前是否存在依赖关系,以便于更加合理的指定诊断策略。
步骤202:确定与目标云功能组件的功能特性对应的诊断测试包;
在步骤201的基础上,本步骤旨在由上述执行主体确定与目标云功能组件的功能特性对应的诊断测试包。此处所描述的功能特性是指一个云功能组件在发挥其设定功能时反映在数据方面的特征,通常可划分输入数据特性、数据处理特性、输出数据特性,输入数据特性可以反映为要求输入数据所采用的格式、编码方式、是否加密等,数据处理特性可以反映为编译、替换、转换、逻辑运算、识别、判断等,输出数据特征可以反映为对处理结果的封装、加壳、与其它信息组装等。
因为诊断测试包的用途就是要能够准确的测试目标云功能组件能否正常、稳定的发挥其设计的功能,因此就需要结合其各方面的功能特性来生成用于形成诊断测试包的内容。
步骤203:下发诊断测试包至目标云功能组件;
在步骤202的基础上,本步骤旨在由上述执行主体下发诊断测试包至目标云功能组件,具体的,可通过多种方式确保诊断测试包准确、完整的被下发至目标云功能组件,例如通过与该云功能组件绑定的通信接口来传输该诊断测试包,以及通过附加电子签名、哈希码的方式来进行合法性和完整性的校验。
另外,上述执行主体也可以不直接将诊断测试包下发给目标云功能组件,可以选择将诊断测试包存储在另外的网络存储空间,并仅下发一条用于使目标云功能组件获悉下载地址的消息即可,以使目标云功能组件根据该消息中记录的下载地址主动下载该诊断测试包并执行,通过此种方式还可以通过监测该诊断测试包是否按预期被目标云功能组件访问过才初步判断该目标云功能组件的运行状态。
步骤204:响应于在与目标云功能组件对应的预设时长内接收到与诊断测试包对应的期望响应包,确定目标云功能组件处于正常运行状态。
在步骤203的基础上,本步骤旨在由上述执行主体在与目标云功能组件对应的预设时长内接收到与诊断测试包对应的期望响应包的情况下,将目标云功能组件的当前运行状态确定为正常运行状态。
可以发现,得到本步骤的判定结果拥有两个前置条件,即首先响应包应当在于该目标云功能组件对应的预设时长内接收到,即通过响应时长来确定目标云功能组件的运行状态;然后,再判断收到的响应包的内容是否符合预期,例如一个正常的云功能组件可以将诊断测试包中包含的多张图片组合为连贯的动图,但若响应包的动图卡顿严重、图片质量较差,也可以说明其不符合预期。因此,仅有在这两项同时满足的情况下,才能够得出上述结论。
本公开实施例提供的云功能组件诊断方法,根据被触发的诊断指令确定作为诊断对象的目标云功能组件,然后根据目标云功能组件的功能特性来确定与之功能特性匹配的诊断测试包,并将诊断测试包下发至目标云功能组件,从而得以能够根据目标云功能组件对诊断测试包的响应情况来确定其当前所处的真实运行状态。相较于常规的对功能组件的工作日志、数据产出进行分析所实现的诊断方式,本公开所提供的诊断方式更加主动、能够避免对处于假死状态的云功能组件所产生的误判,且也能确保诊断结果更具有时效性。
为便于加深对本方案的理解,下面还分别通过图3和图4,给出了两种不同的触发生成诊断指令的方法,以分别适配不同的应用场景满足不同的要求。如图3所示的流程300包括以下步骤:
步骤301:获取各云功能组件的工作日志;
步骤302:将工作日志中日志更新间隔超过预设时长的云功能组件确定为目标云功能组件;
步骤303:生成将目标云功能组件作为诊断对象的诊断指令。
即本实施例属于基于组件更新情况的自动式触发的一种,即组件的工作日志的日志更新情况,通常情况下,在任务不间断的情况下,云功能组件被持续调度、持续处于工作状态,那么其工作日志将持续更新,因此在日志更新间隔较长时,有大概率该云功能组件处于卡死、假死等异常状态。因此本实施例是结合工作日志的更新情况作为指示进行主动诊断的诊断指令的触发机制,以更及时、更准确的完成对疑似处于异常状态的云功能组件的运行状态进行确认。
如图4所示的流程400包括以下步骤:
步骤401:获取各云功能组件上一次完成诊断的诊断完成时间;
步骤402:根据诊断完成时间确定距上一次诊断的时间间隔;
步骤403:将具有最大时长的时间间隔的云功能组件确定为目标云功能组件;
步骤404:生成将目标云功能组件作为诊断对象的诊断指令。
假定当前共存在5个不同的云功能组件A1、A2、A3、A4、A5,其分别距上一次诊断完成时间的时间间隔为:1.3天、1.2天、3天、2天、2.2天,那么按照图4所示的方式,将距上一次诊断完成时间最久的A3云功能组件确定为本次的诊断对象,以避免某个云功能组件的运行状态长时间未得到更新,保持运行状态的时效性。
即在总是对距上一次诊断完成时间间隔最久的云功能组件触发诊断指令。
在上述任意实施例的基础上,本实施例结合图5对流程200中的步骤202给出了一种具体的实现方式,其流程500包括如下步骤:
步骤501:确定目标云功能组件的目标功能特性;
步骤502:根据目标功能特性确定输入数据特性和数据处理特性;
即本实施例中选择通过根据输入数据特性和数据处理特性来验证输出数据特性是否符合预期。
步骤503:根据输入数据特性选择初始输入数据,并调整初始输入数据至符合数据处理特性,得到调整后输入数据;
即本步骤首先将满足输入数据特性的数据确定为初始输入数据,然后再调整初始输入数据至符合数据处理特性,调整包括编译、替换、封装等多种方式,最终得到同时满足输入数据特性和数据处理特性的调整后输入数据。
步骤504:将调整后输入数据封装为目标云功能组件的上游云功能组件生成的诊断测试包。
在步骤503的基础上,本实施例处于为了尽可能的模拟真实情况的出发点,在本步骤由上述执行主体将调整后输入数据封装为目标云功能组件的上游云功能组件生成的诊断测试包,从而将该诊断测试包伪装为目标云功能组件的上游云功能组件所生成并下发给目标云功能组件的数据包。
除本实施例给出的方式外,还可以根据实际需求增加输出数据特性或替换上述示出的任一种特性,进而形成不同的实施例。
进一步的,针对诊断对象的数量为存在执行依赖关系的至少两个目标云功能组件的情况,图5所示实施例可适应性调整为:
分别确定每个目标云功能组件的目标功能特性;
分别根据每项目标功能特性确定相应的输入数据特性和数据处理特性;
同时根据分别与每项目标功能特性对应的输入数据特性,确定初始输入数据;
调整初始输入数据至能够同时体现分别与每项目标功能特性对应的数据处理特性,得到调整后输入数据。
即充分考虑不同的目标云功能组件之间存在的依赖关系,同时考虑其两者的功能特性,使得诊断测试包将可以完成对各目标云功能组件的主动诊断,即主要目的为:保证经过执行顺序在前的目标云功能组件输出的结果,能够完成对执行顺序在后的目标云功能组件的运行状态测试。
在上述任意实施例的基础上,本实施例主要针对区别于步骤204的另一分支给出一种具体的后续处理方案,以通过合适的后续处理尽可能的将诊断出处于异常运行状态的云功能组件恢复正常,请参见如图6所示的流程600:
步骤601:响应于在与目标云功能组件对应的预设时长内未接收到与诊断测试包对应的期望响应包,确定目标云功能组件处于异常运行状态;
步骤602:控制处于异常运行状态的目标云功能组件重启;
即首先通过控制处于异常运行状态的目标云功能组件重启的修复方式,以期之前因偶然因素导致出现卡死的云功能组件恢复正常。具体的,重启操作的执行可通过调用预先编写好的shell脚本(一种使用了Linux/Unix下的命令来编写的程序代码)来完成。
步骤603:响应于目标云功能组件重启预设次数后仍无法恢复至正常运行状态,删除目标云功能组件,并释放用于构建目标云功能组件的运算资源至共同资源池;
步骤604:利用公共资源池中的运算资源重新构建与目标云功能组件功能相同的新云功能组件。
步骤603和步骤306旨在针对目标云功能组件重启预设次数后仍无法恢复至正常运行状态的特殊情况,说明该目标云功能组件出现的问题并非是可通过重启修复的问题,因此为了修复底层问题,还可以通过删除目标云功能组件,并释放用于构建目标云功能组件的运算资源至共同资源池,且利用运算资源重新构建或生成一个新的相同的云功能组件的方式来进行修复。
需要说明的是,是否在步骤602之后采用步骤603-步骤604,可取决于实际情况下所有可能存在的要求,可以仅通过重启的方式来尝试自动修复异常,本实施例仅作为一个包含两个渐进式修复策略的优选实施例存在。
为加深理解,本公开还结合一个具体应用场景给出一种具体的实现方案。假定当前云环境下存在3个功能不同的云功能组件:流转测试组件、解密组件、漏洞修复组件,并设置采用基于距上一次诊断完成时间的时间间隔的均衡式诊断触发机制,下述针对其中的一轮主动诊断进行展开描述:
1)诊断平台基于时间间隔的均衡式诊断触发机制,触发将解密组件作为诊断对象的诊断指令X;
2)诊断平台基于诊断指令X,根据解密组件的功能特性—解密算法确定采用配套加密算法的密文测试包M1,以及预期的明文N1;
3)诊断平台将该密文测试包下发给解密组件;
4)诊断平台判断是否在2.5秒接收到解密组件返回的响应数据包M2,若是,执行步骤5.1),否则执行步骤5.2);
5.1)诊断平台从响应数据包M2中提取出实际的明文N2,然后比对明文N2是否与明文N1一致,若是,执行步骤6),否则执行步骤5.2);
5.2)判定解密组件处于异常运行状态,并尝试重启后跳转为步骤2),直至重启预设次数后仍处于异常运行状态,将销毁该解密组件并重新构建;
6)判定解密组件处于正常运行状态。
在步骤6)或步骤5.2)执行完成后,将继续触发将另一个组件作为针对相的诊断指令。
进一步参考图7,作为对上述各图所示方法的实现,本公开提供了一种云功能组件诊断装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图7所示,本实施例的云功能组件诊断装置700可以包括:诊断对象确定单元701、诊断测试包确定单元702、诊断测试包下发单元703、第一运行状态判定单元704。其中,诊断对象确定单元701,被配置成响应于诊断指令被触发,根据诊断指令确定作为诊断对象的目标云功能组件;诊断测试包确定单元702,被配置成确定与目标云功能组件的功能特性对应的诊断测试包;诊断测试包下发单元703,被配置成下发诊断测试包至目标云功能组件;第一运行状态判定单元704,被配置成响应于在与目标云功能组件对应的预设时长内接收到与诊断测试包对应的期望响应包,确定目标云功能组件处于正常运行状态。
在本实施例中,云功能组件诊断装置700中:诊断对象确定单元701、诊断测试包确定单元702、诊断测试包下发单元703、第一运行状态判定单元704的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201-204的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,云功能组件诊断装置700中还可以包括:被配置成触发诊断指令的指令触发单元,指令触发单元可以被进一步配置成:
获取各云功能组件的工作日志;
将工作日志中日志更新间隔超过预设时长的云功能组件确定为目标云功能组件;
生成将目标云功能组件作为诊断对象的诊断指令。
在本实施例的一些可选的实现方式中,云功能组件诊断装置700中还可以包括:被配置成触发诊断指令的指令触发单元,指令触发单元可以被进一步配置成:
获取各云功能组件上一次完成诊断的诊断完成时间;
根据诊断完成时间确定距上一次诊断的时间间隔;
将具有最大时长的时间间隔的云功能组件确定为目标云功能组件;
生成将目标云功能组件作为诊断对象的诊断指令。
在本实施例的一些可选的实现方式中,诊断测试包确定单元702可以包括:
目标功能特性确定子单元,被配置成确定目标云功能组件的目标功能特性;
输入数据特性及数据处理特性确定子单元,被配置成根据目标功能特性确定输入数据特性和数据处理特性;
初始输入数据选择及调整子单元,被配置成根据输入数据特性选择初始输入数据,并调整初始输入数据至符合数据处理特性,得到调整后输入数据;
诊断测试包封装子单元,被配置成将调整后输入数据封装为目标云功能组件的上游云功能组件生成的诊断测试包。
在本实施例的一些可选的实现方式中,目标功能特性确定子单元可以被进一步配置成:
响应于诊断对象的数量为存在执行依赖关系的至少两个目标云功能组件,分别确定每个目标云功能组件的目标功能特性;
输入数据特性及数据处理特性确定子单元可以被进一步配置成:
分别根据每项目标功能特性确定相应的输入数据特性和数据处理特性;
初始输入数据选择及调整子单元可以被进一步配置成:
同时根据分别与每项目标功能特性对应的输入数据特性,确定初始输入数据;
调整初始输入数据至能够同时体现分别与每项目标功能特性对应的数据处理特性,得到调整后输入数据。
在本实施例的一些可选的实现方式中,云功能组件诊断装置700中还可以包括:
第二运行状态判定单元,被配置成响应于在与目标云功能组件对应的预设时长内未接收到与诊断测试包对应的期望响应包,确定目标云功能组件处于异常运行状态;
重启修复单元,被配置成控制处于异常运行状态的目标云功能组件重启。
在本实施例的一些可选的实现方式中,云功能组件诊断装置700中还可以包括:
组件销毁及资源释放单元,被配置成响应于目标云功能组件重启预设次数后仍无法恢复至正常运行状态,删除目标云功能组件,并释放用于构建目标云功能组件的运算资源至共同资源池;
组件重新构建单元,被配置成利用公共资源池中的运算资源重新构建与目标云功能组件功能相同的新云功能组件。
本实施例作为对应于上述方法实施例的装置实施例存在,本实施例提供的云功能组件诊断装置,根据被触发的诊断指令确定作为诊断对象的目标云功能组件,然后根据目标云功能组件的功能特性来确定与之功能特性匹配的诊断测试包,并将诊断测试包下发至目标云功能组件,从而得以能够根据目标云功能组件对诊断测试包的响应情况来确定其当前所处的真实运行状态。相较于常规的对功能组件的工作日志、数据产出进行分析所实现的诊断方式,本公开所提供的诊断方式更加主动、能够避免对处于假死状态的云功能组件所产生的误判,且也能确保诊断结果更具有时效性。
根据本公开的实施例,本公开还提供了一种电子设备,该电子设备包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,该指令被至少一个处理器执行,以使至少一个处理器执行时能够实现上述任意实施例所描述的云功能组件诊断方法。
根据本公开的实施例,本公开还提供了一种可读存储介质,该可读存储介质存储有计算机指令,该计算机指令用于使计算机执行时能够实现上述任意实施例所描述的云功能组件诊断方法。
本公开实施例提供了一种计算机程序产品,该计算机程序在被处理器执行时能够实现上述任意实施例所描述的云功能组件诊断方法。
图8示出了可以用来实施本公开的实施例的示例电子设备800的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图8所示,设备800包括计算单元801,其可以根据存储在只读存储器(ROM)802中的计算机程序或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序,来执行各种适当的动作和处理。在RAM 803中,还可存储设备800操作所需的各种程序和数据。计算单元801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如云功能组件诊断方法。例如,在一些实施例中,云功能组件诊断方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到RAM 803并由计算单元801执行时,可以执行上文描述的云功能组件诊断方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行云功能组件诊断方法。
本文中以上描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上***的***(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决传统物理主机与虚拟专用服务器(VPS,Virtual Private Server)服务中存在的管理难度大,业务扩展性弱的缺陷。
本公开实施例根据被触发的诊断指令确定作为诊断对象的目标云功能组件,然后根据目标云功能组件的功能特性来确定与之功能特性匹配的诊断测试包,并将诊断测试包下发至目标云功能组件,从而得以能够根据目标云功能组件对诊断测试包的响应情况来确定其当前所处的真实运行状态。相较于常规的对功能组件的工作日志、数据产出进行分析所实现的诊断方式,本公开所提供的诊断方式更加主动、能够避免对处于假死状态的云功能组件所产生的误判,且也能确保诊断结果更具有时效性。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (17)

1.一种云功能组件诊断方法,包括:
响应于诊断指令被触发,根据所述诊断指令确定作为诊断对象的目标云功能组件;
确定与所述目标云功能组件的功能特性对应的诊断测试包;
下发所述诊断测试包至所述目标云功能组件;
响应于在与所述目标云功能组件对应的预设时长内接收到与所述诊断测试包对应的期望响应包,确定所述目标云功能组件处于正常运行状态。
2.根据权利要求1所述的方法,还包括:触发诊断指令,所述触发诊断指令包括:
获取各云功能组件的工作日志;
将所述工作日志中日志更新间隔超过预设时长的云功能组件确定为所述目标云功能组件;
生成将所述目标云功能组件作为诊断对象的诊断指令。
3.根据权利要求1所述的方法,还包括:触发诊断指令,所述触发诊断指令包括:
获取各云功能组件上一次完成诊断的诊断完成时间;
根据所述诊断完成时间确定距上一次诊断的时间间隔;
将具有最大时长的时间间隔的云功能组件确定为所述目标云功能组件;
生成将所述目标云功能组件作为诊断对象的诊断指令。
4.根据权利要求1所述的方法,其中,所述确定与所述目标云功能组件的功能特性对应的诊断测试包,包括:
确定所述目标云功能组件的目标功能特性;
根据所述目标功能特性确定输入数据特性和数据处理特性;
根据所述输入数据特性选择初始输入数据,并调整所述初始输入数据至符合所述数据处理特性,得到调整后输入数据;
将所述调整后输入数据封装为所述目标云功能组件的上游云功能组件生成的诊断测试包。
5.根据权利要求4所述的方法,其中,所述确定所述目标云功能组件的目标功能特性,包括:
响应于所述诊断对象的数量为存在执行依赖关系的至少两个目标云功能组件,分别确定每个所述目标云功能组件的目标功能特性;
所述根据所述目标功能特性确定输入数据特性和数据处理特性,包括:
分别根据每项所述目标功能特性确定相应的输入数据特性和数据处理特性;
所述根据所述输入数据特性选择初始输入数据,并调整所述初始输入数据至符合所述数据处理特性,得到调整后输入数据,包括:
同时根据分别与每项所述目标功能特性对应的输入数据特性,确定所述初始输入数据;
调整所述初始输入数据至能够同时体现分别与每项所述目标功能特性对应的数据处理特性,得到所述调整后输入数据。
6.根据权利要求1-5任一项所述的方法,还包括:
响应于在与所述目标云功能组件对应的预设时长内未接收到与所述诊断测试包对应的期望响应包,确定所述目标云功能组件处于异常运行状态;
控制处于所述异常运行状态的目标云功能组件重启。
7.根据权利要求6所述的方法,还包括:
响应于所述目标云功能组件重启预设次数后仍无法恢复至所述正常运行状态,删除所述目标云功能组件,并释放用于构建所述目标云功能组件的运算资源至共同资源池;
利用所述公共资源池中的运算资源重新构建与所述目标云功能组件功能相同的新云功能组件。
8.一种云功能组件诊断装置,包括:
诊断对象确定单元,被配置成响应于诊断指令被触发,根据所述诊断指令确定作为诊断对象的目标云功能组件;
诊断测试包确定单元,被配置成确定与所述目标云功能组件的功能特性对应的诊断测试包;
诊断测试包下发单元,被配置成下发所述诊断测试包至所述目标云功能组件;
第一运行状态判定单元,被配置成响应于在与所述目标云功能组件对应的预设时长内接收到与所述诊断测试包对应的期望响应包,确定所述目标云功能组件处于正常运行状态。
9.根据权利要求8所述的装置,还包括:被配置成触发诊断指令的指令触发单元,所述指令触发单元被进一步配置成:
获取各云功能组件的工作日志;
将所述工作日志中日志更新间隔超过预设时长的云功能组件确定为所述目标云功能组件;
生成将所述目标云功能组件作为诊断对象的诊断指令。
10.根据权利要求8所述的装置,还包括:被配置成触发诊断指令的指令触发单元,所述指令触发单元被进一步配置成:
获取各云功能组件上一次完成诊断的诊断完成时间;
根据所述诊断完成时间确定距上一次诊断的时间间隔;
将具有最大时长的时间间隔的云功能组件确定为所述目标云功能组件;
生成将所述目标云功能组件作为诊断对象的诊断指令。
11.根据权利要求8所述的装置,其中,所述诊断测试包确定单元包括:
目标功能特性确定子单元,被配置成确定所述目标云功能组件的目标功能特性;
输入数据特性及数据处理特性确定子单元,被配置成根据所述目标功能特性确定输入数据特性和数据处理特性;
初始输入数据选择及调整子单元,被配置成根据所述输入数据特性选择初始输入数据,并调整所述初始输入数据至符合所述数据处理特性,得到调整后输入数据;
诊断测试包封装子单元,被配置成将所述调整后输入数据封装为所述目标云功能组件的上游云功能组件生成的诊断测试包。
12.根据权利要求11所述的装置,其中,所述目标功能特性确定子单元被进一步配置成:
响应于所述诊断对象的数量为存在执行依赖关系的至少两个目标云功能组件,分别确定每个所述目标云功能组件的目标功能特性;
所述输入数据特性及数据处理特性确定子单元被进一步配置成:
分别根据每项所述目标功能特性确定相应的输入数据特性和数据处理特性;
所述初始输入数据选择及调整子单元被进一步配置成:
同时根据分别与每项所述目标功能特性对应的输入数据特性,确定所述初始输入数据;
调整所述初始输入数据至能够同时体现分别与每项所述目标功能特性对应的数据处理特性,得到所述调整后输入数据。
13.根据权利要求8-12任一项所述的装置,还包括:
第二运行状态判定单元,被配置成响应于在与所述目标云功能组件对应的预设时长内未接收到与所述诊断测试包对应的期望响应包,确定所述目标云功能组件处于异常运行状态;
重启修复单元,被配置成控制处于所述异常运行状态的目标云功能组件重启。
14.根据权利要求13所述的装置,还包括:
组件销毁及资源释放单元,被配置成响应于所述目标云功能组件重启预设次数后仍无法恢复至所述正常运行状态,删除所述目标云功能组件,并释放用于构建所述目标云功能组件的运算资源至共同资源池;
组件重新构建单元,被配置成利用所述公共资源池中的运算资源重新构建与所述目标云功能组件功能相同的新云功能组件。
15.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的云功能组件诊断方法。
16.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1-7中任一项所述的云功能组件诊断方法。
17.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据权利要求1-7中任一项所述云功能组件诊断方法的步骤。
CN202110988826.3A 2021-08-26 2021-08-26 云功能组件诊断方法、装置、设备、存储介质 Active CN113704016B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110988826.3A CN113704016B (zh) 2021-08-26 2021-08-26 云功能组件诊断方法、装置、设备、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110988826.3A CN113704016B (zh) 2021-08-26 2021-08-26 云功能组件诊断方法、装置、设备、存储介质

Publications (2)

Publication Number Publication Date
CN113704016A true CN113704016A (zh) 2021-11-26
CN113704016B CN113704016B (zh) 2023-07-28

Family

ID=78655237

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110988826.3A Active CN113704016B (zh) 2021-08-26 2021-08-26 云功能组件诊断方法、装置、设备、存储介质

Country Status (1)

Country Link
CN (1) CN113704016B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004014022A2 (de) * 2002-07-29 2004-02-12 Baumüller Anlagen-Systemtechnik GmbH & Co. Rechnernetzwerk mit diagnoserechnerknoten
CN105938443A (zh) * 2015-03-04 2016-09-14 国际商业机器公司 用于在计算环境中执行诊断活动的方法和***
CN109039729A (zh) * 2018-07-25 2018-12-18 浪潮电子信息产业股份有限公司 一种云平台的故障检测方法及装置
CN110740131A (zh) * 2019-09-30 2020-01-31 北京达佳互联信息技术有限公司 数据处理方法、装置、电子设备及存储介质
CN111026096A (zh) * 2019-12-30 2020-04-17 华人运通(江苏)技术有限公司 车辆诊断方法、装置、***、设备及计算机可读存储介质
CN111913133A (zh) * 2020-06-30 2020-11-10 北京航天测控技术有限公司 分布式故障诊断维修方法、装置、设备及计算机可读介质
CN112395194A (zh) * 2020-11-17 2021-02-23 中国建设银行股份有限公司 一种接入测试平台的方法和装置
CN113220540A (zh) * 2021-06-07 2021-08-06 深圳华锐金融技术股份有限公司 业务管理方法、装置、计算机设备和存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004014022A2 (de) * 2002-07-29 2004-02-12 Baumüller Anlagen-Systemtechnik GmbH & Co. Rechnernetzwerk mit diagnoserechnerknoten
CN105938443A (zh) * 2015-03-04 2016-09-14 国际商业机器公司 用于在计算环境中执行诊断活动的方法和***
CN109039729A (zh) * 2018-07-25 2018-12-18 浪潮电子信息产业股份有限公司 一种云平台的故障检测方法及装置
CN110740131A (zh) * 2019-09-30 2020-01-31 北京达佳互联信息技术有限公司 数据处理方法、装置、电子设备及存储介质
CN111026096A (zh) * 2019-12-30 2020-04-17 华人运通(江苏)技术有限公司 车辆诊断方法、装置、***、设备及计算机可读存储介质
CN111913133A (zh) * 2020-06-30 2020-11-10 北京航天测控技术有限公司 分布式故障诊断维修方法、装置、设备及计算机可读介质
CN112395194A (zh) * 2020-11-17 2021-02-23 中国建设银行股份有限公司 一种接入测试平台的方法和装置
CN113220540A (zh) * 2021-06-07 2021-08-06 深圳华锐金融技术股份有限公司 业务管理方法、装置、计算机设备和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
姜会霞;范书义;魏保华;王成;: "面向服务的AI-ESTATE故障诊断***建模", 计算机测量与控制, no. 03 *

Also Published As

Publication number Publication date
CN113704016B (zh) 2023-07-28

Similar Documents

Publication Publication Date Title
US10642725B2 (en) Automated test generation for multi-interface enterprise virtualization management environment
US9898397B2 (en) Deployment pattern monitoring
US11132356B2 (en) Optimizing data entries in a log
CN104765678A (zh) 对移动终端设备上的应用进行测试的方法及装置
US10572373B2 (en) Automated test generation for multi-interface and multi-platform enterprise virtualization management environment
WO2022028144A1 (en) Blockchain management of provisioning failures
KR20210042276A (ko) 애플리케이션 실행 상태 검증 방법 및 장치
CN114328132A (zh) 外部数据源的状态监控方法、装置、设备和介质
US20230007894A1 (en) Intelligent Dynamic Web Service Testing Apparatus in a Continuous Integration and Delivery Environment
US20180365126A1 (en) Processing failed events on an application server
US11720810B2 (en) Reducing mean time to find problems in enterprise information technology systems using bots
US9674060B2 (en) Dynamic and selective management of integration points using performance metrics
CN113704016B (zh) 云功能组件诊断方法、装置、设备、存储介质
US10165088B2 (en) Providing unit of work continuity in the event initiating client fails over
US20180203787A1 (en) Detection of software errors
CN113283891A (zh) 信息处理方法、装置和电子设备
US10970152B2 (en) Notification of network connection errors between connected software systems
CN112596750A (zh) 应用测试方法、装置、电子设备及计算机可读存储介质
US10977210B2 (en) Methods for implementing an administration and testing tool
CN112532747B (zh) 用于输出信息的方法、装置、设备以及存储介质
CN113886780B (zh) 客户信息校验方法、装置、介质及电子设备
US11687441B2 (en) Intelligent dynamic web service testing apparatus in a continuous integration and delivery environment
US20230214495A1 (en) Dynamic prioritization of vulnerability exclusion renewals
CN110262756B (zh) 用于缓存数据的方法和装置
US20230412637A1 (en) Hardware detection and prevention of cryptojacking

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