CN113419962A - 远程调试控制、执行方法及其装置、设备、介质 - Google Patents
远程调试控制、执行方法及其装置、设备、介质 Download PDFInfo
- Publication number
- CN113419962A CN113419962A CN202110793895.9A CN202110793895A CN113419962A CN 113419962 A CN113419962 A CN 113419962A CN 202110793895 A CN202110793895 A CN 202110793895A CN 113419962 A CN113419962 A CN 113419962A
- Authority
- CN
- China
- Prior art keywords
- debugging
- server
- instruction
- executable
- user
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开一种远程调试控制、执行方法及其装置、设备、介质,所述方法包括:将当前调试服务器切换为处于开放接入状态,以供合法用户验证自身接入权限后请求通信服务器予以接入;获取通信服务器响应合法用户的接入请求后提供的连接配置信息进行本地配置,建立当前调试服务器与合法用户所在执行端设备之间经该通信服务器中继的数据通信链路;将可执行调试指令经数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行;经所述数据通信链路获取所述执行端设备执行所述可执行调试指令后返回的执行结果信息。本申请实现应用程序分布式报障,方便执行在线远程调试。
Description
技术领域
本申请实施例涉及网络测试领域,尤其涉及一种远程调试控制、执行方法、装置、计算机设备及存储介质。
背景技术
各大互联网软件平台需要其已上线的软件产品进行调试维护,以修复上线软件所存在的故障,防止软件因存在的故障而造成部分功能无法被使用,从而影响用户的软件使用体验,降低软件存活的用户数量。
现有技术中大多通过上报埋点及错误监控,通过日志回溯的方式,分析软件所发生故障的原因,以解决软件的故障,但这样的故障处理方式效率较低,当软件出现故障时,用户自己上报故障后,往往等待平台方数日或数周进行故障分析,以反馈补丁进行更新修复。
且当软件为直播应用程序时,其需面向海量的用户的日常使用进行故障维护,若软件出现较大的故障且无法快速修复,将影响大量的用户的使用体验,造成直播平台的损失大量的用户,破坏其直播生态。
如何快速定位用户报障,一直是目前行业所存在的痛点,对此,本申请做出积极的探索。
发明内容
本申请的首要目的在于提供一种远程调试控制方法及其相应的装置、电子设备、非易失性存储介质。
本申请的另一目的在于适应前一目的而提供一种远程调试执行方法及其相应的装置、电子设备、非易失性存储介质。
为满足本申请的各个目的,本申请采用如下技术方案:
适应本申请的首要目的而提出的一种远程调试控制方法,包括如下步骤:
将当前调试服务器切换为处于开放接入状态,以供合法用户验证自身接入权限后请求通信服务器予以接入;
获取通信服务器响应所述合法用户的接入请求后提供的连接配置信息进行本地配置,建立当前调试服务器与所述合法用户所在执行端设备之间经该通信服务器中继的数据通信链路;
将可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行;
经所述数据通信链路获取所述执行端设备执行所述可执行调试指令后返回的执行结果信息。
进一步的实施例中,将当前调试服务器切换为处于开放接入状态,以供合法用户验证自身接入权限后请求通信服务器予以接入,包括如下步骤:
接收所述合法用户所处执行端设备推送的程序故障位置信息;
将所述程序故障位置信息与所述合法用户的用户特征信息构造为报障记录,存储于报障信息列表以供查询;
响应基于所述报障信息列表中的报障记录的开放接入指令,将当前调试服务器切换为处于开放接入状态,以供所述合法用户验证自身接入权限后请求通信服务器予以接入。
进一步的实施例中,将当前调试服务器切换为处于开放接入状态,以供合法用户验证自身接入权限后请求通信服务器予以接入,包括:
向预设的状态信息表写入当前调试服务器的状态配置信息,所述状态配置信息包括被调试程序的合法用户的用户特征信息,以将当前调试服务器切换为处于对所述合法用户开放的开放接入状态,以使所述合法用户查询该状态信息表完成其自身接入权限的验证。
进一步的实施例中,将可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行,包括如下步骤:
获取管理用户提交的原始调试指令,将其经所述数据通信链路给所述通信服务器;
触发所述通信服务器对所述原始调试指令进行格式校验,并将通过格式校验的原始调试指令编译为可执行调试指令;
由所述通信服务器将所述可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行。
进一步的实施例中,将可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行,包括如下步骤:
获取管理用户提交的原始调试指令,将其经所述数据通信链路给所述通信服务器;
触发所述通信服务器对所述原始调试指令进行格式校验,并将通过格式校验的原始调试指令确定为可执行调试指令;
由所述通信服务器将所述可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行。
较佳的实施例中,所述数据通信链路为基于套接字协议实现的数据通信链路。
较佳的实施例中,经所述数据通信链路获取所述执行端设备执行所述可执行调试指令后返回的执行结果信息之后,包括如下步骤:
将所述执行结果信息推送至提交所述可执行调试指令的原始调试指令的管理用户所处控制设备中显示。
适应本申请的首要目的而提出的一种远程调试控制装置,其包括:
状态切换模块,用于将当前调试服务器切换为处于开放接入状态,以供合法用户验证自身接入权限后请求通信服务器予以接入;
链路建立模块,用于获取通信服务器响应所述合法用户的接入请求后提供的连接配置信息进行本地配置,建立当前调试服务器与所述合法用户所在执行端设备之间经该通信服务器中继的数据通信链路;
指令传输模块,用于将可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行;
结果获取模块,用于经所述数据通信链路获取所述执行端设备执行所述可执行调试指令后返回的执行结果信息。
进一步的实施例中,所述状态切换模块包括:
信息接收子模块,用于接收所述合法用户所处执行端设备推送的程序故障位置信息;
报障记录构造子模块,用于将所述程序故障位置信息与所述合法用户的用户特征信息构造为报障记录,存储于报障信息列表以供查询;
指令响应子模块,用于响应基于所述报障信息列表中的报障记录的开放接入指令,将当前调试服务器切换为处于开放接入状态,以供所述合法用户验证自身接入权限后请求通信服务器予以接入。
进一步的实施例中,所述指令传输模块包括:
指令获取子模块,用于获取管理用户提交的原始调试指令,将其经所述数据通信链路给所述通信服务器;
指令编译子模块,用于触发所述通信服务器对所述原始调试指令进行格式校验,并将通过格式校验的原始调试指令编译为可执行调试指令;
指令传输子模块,用于由所述通信服务器将所述可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行。
较佳的实施例中,所述指令传输模块还包括:
指令获取子模块,用于获取管理用户提交的原始调试指令,将其经所述数据通信链路给所述通信服务器;
指令确定子模块,用于触发所述通信服务器对所述原始调试指令进行格式校验,并将通过格式校验的原始调试指令确定为可执行调试指令;
指令传输子模块,用于由所述通信服务器将所述可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行。
适应本申请的另一目的而提出的一种远程调试执行方法,包括如下步骤:
响应当前被调试程序触发的异常抛出事件,向调试服务器提交故障报告信息,该故障报告信息包括指示触发所述异常抛出事件的程序位置的故障位置信息及当前合法用户的用户特征信息;
轮询远程存储的状态信息表,在其中查询所述调试服务器预先登记的状态配置信息,验证该状态配置信息是否包含当前合法用户的用户特征信息而确定是否对当前合法用户开放接入权限;
在确认当前合法用户具有开放接入权限后,初始化被调试程序预配置的沙箱环境,向通信服务器发起接入请求,驱动服务器建立当前被调试程序与所述调试服务器之间的经通信服务器中继的数据通信链路;
从所述数据通信链路接收调试服务器传输的可执行调试指令,将其置于所述沙箱环境中执行,将执行结果信息通过所述数据通信链路返回给所述调试服务器。
适应本申请的另一目的而提出的一种远程调试执行装置,其包括:
信息提交模块,用于响应当前被调试程序触发的异常抛出事件,向调试服务器提交故障报告信息,该故障报告信息包括指示触发所述异常抛出事件的程序位置的故障位置信息及当前合法用户的用户特征信息;
状态轮询模块,用于轮询远程存储的状态信息表,在其中查询所述调试服务器预先登记的状态配置信息,验证该状态配置信息是否包含当前合法用户的用户特征信息而确定是否对当前合法用户开放接入权限;
请求发起模块,用于在确认当前合法用户具有开放接入权限后,初始化被调试程序预配置的沙箱环境,向通信服务器发起接入请求,驱动服务器建立当前被调试程序与所述调试服务器之间的经通信服务器中继的数据通信链路;
指令执行模块,用于从所述数据通信链路接收调试服务器传输的可执行调试指令,将其置于所述沙箱环境中执行,将执行结果信息通过所述数据通信链路返回给所述调试服务器。
为解决上述技术问题本申请实施例还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述所述远程调试控制方法或远程调试执行的步骤。
为解决上述技术问题本申请实施例还提供一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述所述远程调试控制方法或远程调试执行的步骤。
与现有技术相比,本申请具有如下优点:
首先,本申请通过建立被调试端、通信端及调试端三端之间的用于调试的数据通信链路,通过通信端为被调试端与调试端建立数据通信链路,以便被调试端通过该数据通信链路向调试端发送故障信息,调试端反馈可执行指令至被调试端的沙箱环境中进行执行,以获取被调试端的执行结果进行故障排查,由此实现双方的实时的数据互通链路,使调试端可高效地定位软件的报障,提升故障的解决效率,特别是面对直播应用程序时,高效地故障解决效率,可保证直播应用程序的故障被即时解决,维护直播平台的直播生态。
其次,本申请的通信端负责被调试端及调试端之间的数据通信链路的中继,以维护被调试端与调试端之间的数据互通,防止因双方通信距离较远或网络波动而出现链路中断,造成双方无法持续的进行数据共享,降低故障的解决效率。
另外,本申请的通信端负责将调试端的原始调试指令转换为可执行调试指令,通信端校验调试端推送的原始调试指令是否符合相应的格式规范,且对符合格式规范的原始调试指令进行编译或确定,以将其转换为可执行调试指令推送至被调试端进行执行,防止被调试端获取的调试指令无法执行,从而降低了故障的解决效率,且可对调试指令进行安全排查,防止调试指令破坏了被调试端的整体安全性。
再者,本申请的被调试端在沙箱环境执行可执行调试指令,拦截可执行调试指令对原系统的调用,防止错误的调试指令影响原软件的完整性,进而破坏被调试端的整体安全性,造成用户信息泄露等安全问题。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为实施本申请的技术方案相关的一种典型的网络部署架构示意图;
图2为本申请的远程调试控制方法的典型实施例的流程示意图;
图3为图2中步骤S11的具体步骤所形成的流程示意图;
图4为本申请的调试服务器提供管理用户进行调试的调试页面的图形用户界面的示意图;
图5为图2中步骤S13的一种实施例的具体步骤所形成的流程示意图;
图6为图2中步骤S13的另一种实施例的具体步骤所形成的流程示意图;
图7为本申请的远程调试控制装置的典型实施例的原理框图;
图8为本申请的远程调试执行方法的典型实施例的流程示意图;
图9为本申请的远程调试执行装置的典型实施例的原理框图;
图10为本申请一个实施例的计算机设备的基本结构框图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“客户端”、“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,进行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他诸如个人计算机、平板电脑之类的通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(PersonalCommunications Service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global PositioningSystem,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“客户端”、“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“客户端”、“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
请参阅图1,本申请相关技术方案实施时所需的硬件基础可按图中所示的架构进行部署。本申请所称服务器80部署在云端,作为通信服务器,其可以负责进一步连接起相关调试服务器以及其他提供相关支持的服务器等,以此构成逻辑上相关联的服务机群,来为相关的终端设备例如图中所示的智能手机81和个人计算机82或者第三方服务器(未图示)提供故障调试服务。所述的智能手机和个人计算机均可通过公知的网络接入方式接入互联网,与云端的服务器80建立数据通信链路,以便运行所述服务器所提供的服务相关的终端应用程序。
本申请所称的“服务器”、“客户端”、“服务节点”等名称所指向的硬件,本质上是具备个人计算机等效能力的电子设备,为具有中央处理器(包括运算器和控制器)、存储器、输入设备以及输出设备等冯诺依曼原理所揭示的必要构件的硬件装置,计算机程序存储于其存储器中,中央处理器将存储在外存中的程序调入内存中运行,执行程序中的指令,与输入输出设备交互,借此完成特定的功能。
需要指出的是,本申请所称的“服务器”这一概念,同理也可扩展到适用于服务器机群的情况。依据本领域技术人员所理解的网络部署原理,所述各服务器应是逻辑上的划分,在物理空间上,这些服务器既可以是互相独立但可通过接口调用的,也可以是集成到一台物理计算机或一套计算机机群的。本领域技术人员应当理解这一变通,而不应以此约束本申请的网络部署方式的实施方式。
本申请相关技术方案可部署在云端服务器,其可以与业务上相关的服务器实现数据通信连接以协调在线服务,还可与其他相关服务器构成逻辑上相关联的服务机群,来为相关的终端设备例如智能手机、个人计算机、第三方服务器等提供服务。所述的智能手机和个人计算机均可通过公知的网络接入方式接入互联网,与本申请的服务器建立数据通信链路,以便访问和使用所述服务器所提供的服务。
对于服务器而言,一般通过提供在线服务的服务引擎开放相应的程序接口供各种终端设备进行远程调用,本申请中适于部署于服务器的相关技术方案,便可以此种方式实现于服务器中。
本领域技术人员对此应当知晓:本申请的各种方法,虽然基于相同的概念而进行描述而使其彼此间呈现共通性,但是,除非特别说明,否则这些方法都是可以独立执行的。同理,对于本申请所揭示的各个实施例而言,均基于同一发明构思而提出,因此,对于相同表述的概念,以及尽管概念表述不同但仅是为了方便而适当变换的概念,应被等同理解。
本申请即将揭示的各个实施例,除非明文指出彼此之间的相互排斥关系,否则,各个实施例所涉的相关技术特征可以交叉结合而灵活构造出新的实施例,只要这种结合不背离本申请的创造精神且可满足现有技术中的需求或解决现有技术中的某方面的不足即可。对此变通,本领域技术人员应当知晓。
请参阅图2所示本实施例远程调试控制方法的基本流程示意图。如图2所示,本申请一种远程调试控制方法,在其典型实施例中,包括如下步骤:
步骤S11,将当前调试服务器切换为处于开放接入状态,以供合法用户验证自身接入权限后请求通信服务器予以接入:
当前所述调试服务器通过将自身切换为处于所述开放接入状态,以提供所述合法用户验证自身接入权限后,向所述通信服务器请求接入当前调试服务器,以建立所述合法用户的被调试程序与当前调试服务器的数据通信链路。
所述的调试服务器负责对与其建立数据通信链路的合法用户的被调试程序进行调试操作,调试操作一般由管理用户所负责,通过将调试服务器切换为处于所述开发接入状态,使其与相应的合法用户建立数据通信链路,以对该合法用户的被调试程序进行调试操作。
所述的通信服务器负责当前调试服务器与合法用户的被调试程序之间的调试通信,例如,为合法用户向当前调试服务器发送接入请求,为调试服务器提交的原始调试指令进行格式校验及编译等,以将该原始调试指令转换为可执行调试指令推送至合法用户的被调试程序中执行等。
一种实施例中,实时通信服务器及调试服务器所提供的功能可为同一端设备所提供,即该设备负责所述合法用户所处的执行端设备与其自身的数据通信链路的建立,以及负责将原始执行指令转换为可执行指令,并通过所述数据通信链路向该执行端设备推送该可执行指令。
所述的开放接入状态是指表征调试服务器与相应的合法用户的被调试程序可进行数据通信链路的建立的状态,所述开放接入状态具有针对性,通过将调试服务器切换为针对对应的合法用户的所述开放接入状态,以供该开放接入状态所指向的合法用户可与该调试服务器进行接入操作,即建立所述数据通信链路以进行被调试程序的调试操作。
关于将当前调试服务器切换为处于所述开放接入状态的切换方式,可通过向预设的状态信息表写入当前调试服务器的状态配置信息,该状态配置信息中包括被调试程序的所述合法用户的用户特征信息,以表征当前调试服务器与该合法用户可进行所述数据通信链路的建立,将当前调试服务器切换为处于指向该合法用户的所述开放接入状态,该合法用户的客户端轮询查询所述状态信息表中是否存在当前调试服务器的所述状态配置信息,以验证其自身是否具有与当前调试服务器具有接入权限,到该状态信息表中存在该合法用户相应的状态配置信息时,该合法用户的被调试程序向所述通信服务器请求接入当前调试服务器,以建立该被调试程序于当前调试服务器的所述数据通信链路。
一种实施例中,所述状态配置信息中包括被调试程序的项目特征信息及所述用户特征信息,使该状态配置信息所属的调试服务器服务于相应项目的调试作业,且将该调试服务器切换为处于指向该合法用户的所述开放接入状态;通过所述项目特征信息的设定,可记录当前调试服务器所调试的被调试程序的项目类型,也可通过该项目特征信息区分调试服务器群种各调试服务器所针对进行调试作业的项目,合理调度调试服务器进行调试作业。
所述的状态信息表一般存储至中心服务器中,以便通过该中心服务器对所述调试服务器进行分布式管理,构造相应的内容分发网络,所述内容发布网络是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过所述中心服务器的负载均衡、内容分发、调度等功能模块,使所述合法用户就近获取所述状态信息进行接入验证,降低网络拥塞,提高合法用户访问响应速度和命中率。相应的,所述状态信息表也可存储至当前调试服务器、通信服务器或合法用户的客户端中,相应的服务器或终端将实时或定时更新所述状态信息表中存储的状态配置信息,以保证数据的时效性,供合法用户进行自身接入权限的验证,使其与相应的调试服务器进行接入,建立双方的数据通信链路以进行程序调试操作。
请参阅图3,关于所述合法用户作为触发当前调试服务器切换为所述开发接入状态的发起方的实施方式,其具体实施步骤如下:
步骤S111,接收所述合法用户所处执行端设备推送的程序故障位置信息:
当所述合法用户所处执行端设备运行的相应程序发生故障时,将触发该程序向当前调试服务器推送用于表征故障处于程序中相应的位置的所述程序故障位置信息。
步骤S112,将所述程序故障位置信息与所述合法用户的用户特征信息构造为报障记录,存储于报障信息列表以供查询:
当前调试服务器接收到所述程序故障位置信息后,将该程序故障位置信息与其所属的合法用户的所属用户特征信息构造为所述报障记录,并将该报障记录存储只所述报障信息列表中,以便当前调试服务器在该列表中进行查询,确定合法用户相对应的程序故障位置信息。
步骤S113,响应基于所述报障信息列表中的报障记录的开放接入指令,将当前调试服务器切换为处于开放接入状态,以供所述合法用户验证自身接入权限后请求通信服务器予以接入:
所述报障信息列表中按序生成其存储的哥报障记录的所述开放接入指令,以便当前调试服务器响应所述开放接入指令,触发将自身切换为该开放接入指令所指向报障信息的用户特征信息的合法用户的所述开放接入状态,以供该合法用户验证自身的接入权后,请求所述通信服务器予以接入当前调试服务器。
步骤S12,获取通信服务器响应所述合法用户的接入请求后提供的连接配置信息进行本地配置,建立当前调试服务器与所述合法用户所在执行端设备之间经该通信服务器中继的数据通信链路:
当前调试服务器切换为所述开放接入状态后,且所述合法用户通过与当前调试服务器的接入权限验证后,该合法用户将向所述通信服务器推送所述接入请求,以触发该通信服务器响应该接入请求,该合法用户的所述连接配置信息推送至当前调试服务器中,以便当前调试服务器估计该连接配置信息进行所述本地配置,建立当前调试服务器与所述合法用户所在执行端设备之间经该通信服务器中继的所述数据通信链路。
所述数据通信链路为基于套接字协议(Websocket)实现的数据通信链路,所述套接字协议基于TCP所实现,根据其所现实的数据通信链路可现实客户端(合法用户所在的指向端设备)与服务端(当前调试服务器)之间进行双向数据传输,且该数据通信链路由所述通信服务器所中继,通信服务器负责为客户端(合法用户所在的指向端设备)推送所述连接配置信息及执行结果信息至服务端(当前调试服务器)中,为服务端(当前调试服务器)验证及编译或确定原始调试指令为可执行调试指令推送至客户端(合法用户所在的指向端设备)进行执行调试。
所述合法用户基于http协议,向所述通信服务器推送所述接入请求,以触发通信服务器根据该接入请求查询以处于所述开放接入状态的调试服务器,当通信服务器查询到处于针对所述接入请求所属的合法用户的开放接入状态的调试服务器后,将该合法用户的所述连接配置信息推送至该调试服务器中,以便所述调试服务器解析该连接配置信息,获取该连接配置信息所包含套接字协议(Websocket)的合法用户的所在执行端设备的端口,调试服务器建立所述套接字协议(Websocket),并通过通信服务器检验所述合法用户是否在线,若在线,则通过所述端口向该合法用户合法用户的所在执行端设备反馈一个请求成功指令(http 101),以完成所述本地配置,以建立所述调试服务器与所述合法用户所在的执行端设备的基于套接字协议(Websocket)实现且由通信服务器负责中继的所述数据通信链路。
步骤S13,将可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行:
当前调试服务器与所述合法用户所在执行端设备之间的所述数据通信链路完成建立后,当前调试服务器根据所述执行端设备推送的所述故障位置信息,生成相应的原始调试指令至所述通信服务器中进行检验及编译或确定,将该原始调试指令转换为所述可执行调试指令,该可执行调试指令通过所述数据通信链路,由该通信服务器负责中继推送至所述所述执行端设备中,以便该执行端设备在所述沙箱环境中执行该可执行调试指令。
请参考图4,当前调用服务器提供管理用户如图4所示的调试页面401进行所述可执行调式指令的编写,报障信息列表控件402中展示所述报障信息列表所存储的合法用户及其相应的所述报障位置信息,管理用户可通过该报障信息列表控件402选定相应的合法用户进行所述可执行调试指令的推送,管理用户根据所述报障信息列表控件402所显示的合法用户的被调试程序的所述程序故障位置信息,并通过原始调试指令输入窗口403进行所述原始调试指令的编写,并通过触控指令推送控件404将原始调试指令输入窗口403所编写的原始调试指令推送至所述通信服务器中进行验证及编译或确定,以推送至报障信息列表控件402中选定的合法用户所在执行端设备的沙箱环境中执行,执行结果输出触控405用于输出合法用户通过所述数据通信链路推送的执行结果。
所述的沙箱环境是指一种按照安全策略限制程序行为的执行环境,所述合法用户的执行端设备在该环境中运行所述可执行调试指令,可避免因执行所述可执行调用指令而影响其被调试程序的安全性,且在该环境中将屏蔽被调试程序的以为中Dom相关的方法,执行所述可执行调试指令仅能影响该页面的全局变量及调试业务所暴露的变量。
所述的可执行调试指令或原始调试指令一般是指由高级编程语言所编写构成的指令或由超文本标记语言所编写构成的指令,所述原始调试指令一般由当前调试服务器的管理人员所编写,并由所述通信服务器进行校验及编译或确定以将所述原始调试指令转换为所述可执行调试指令推送至合法用户所处执行端设备中进行执行。
请参考图5,关于当前调试服务器将所述原始调试指令推送至所述通信服务器,以触发该通信服务器对所述原始调试指令执行校验、编译及推送的实施方式,其具体步骤如下:
步骤S131,获取管理用户提交的原始调试指令,将其经所述数据通信链路给所述通信服务器:
当前调试服务器获取由所述管理用户所提交的所述原始调试指令,并将其通过所述数据通信链路推送至所述通信服务器中进行校验及编译。
步骤S132,触发所述通信服务器对所述原始调试指令进行格式校验,并将通过格式校验的原始调试指令编译为可执行调试指令:
所述通信服务器接收到所述原始调试指令后,将对该原始调试指令进行格式校验,以确保该原始调试指令为符合其相应的的编程语言所指定的格式,所述通信服务器一般是基于ESLint模块对所述原始调试指令进行格式校验,若所述原始调试指令不通过所述格式校验,所述通信服务器将向当前调试服务器推送校验失败的通知信息,以通知管理人员其所编写的原始调试指令存在格式上的错误。
需要进行编译的原始调试指令一般为高级语言,例如Js或C语言等,当所述原始调试指令通过所述通信服务器的格式校验后,该通信服务器将对该原始调试指令进行编译,其一般基于Babel模块对该原始调试指令进行编译,以将该原始调试指令编译相应的所述可执行调试指令。
步骤S133,由所述通信服务器将所述可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行:
所述通知服务器完成将所述原始调试指令转换为所述可执行调试指令后,将该可执行调试指令经所述数据通信链路,传输至当前调试服务器所指定的所述执行端设备中,以便该执行端设备获取该可执行调试指令,在其预设的所述沙箱环境中执行该可执行调试指令。
请参考图6,关于当前调试服务器将所述原始调试指令推送至所述通信服务器,以触发该通信服务器对所述原始调试指令执行校验、确定及推送的实施方式,其具体步骤如下:
步骤S131’,获取管理用户提交的原始调试指令,将其经所述数据通信链路给所述通信服务器:
当前调试服务器获取由所述管理用户所提交的所述原始调试指令,并将其通过所述数据通信链路推送至所述通信服务器中进行校验及编译。
步骤S132’,触发所述通信服务器对所述原始调试指令进行格式校验,并将通过格式校验的原始调试指令确定为可执行调试指令:
所述通信服务器接收到所述原始调试指令后,将对该原始调试指令进行格式校验,以确保该原始调试指令为符合其相应的的编程语言所指定的格式,所述通信服务器一般是基于ESLint模块对所述原始调试指令进行格式校验,若所述原始调试指令不通过所述格式校验,所述通信服务器将向当前调试服务器推送校验失败的通知信息,以通知管理人员其所编写的原始调试指令存在格式上的错误。
当所述原始调试指令为机器语言或汇编语言时,该原始调试指令将不用进行编译,当所述原始调试指令为机器语言时,所述通信服务器直接将该原始调试指令确定为所述可执行调试指令,若当所述原始调试指令为汇编语言时,所述通信服务器将对该原始调试指令进行汇编,并将其汇编操作,以将该原始调试指令确定为所述可执行调试指令。
步骤S133’,由所述通信服务器将所述可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行:
所述通知服务器完成将所述原始调试指令转换为所述可执行调试指令后,将该可执行调试指令经所述数据通信链路,传输至当前调试服务器所指定的所述执行端设备中,以便该执行端设备获取该可执行调试指令,在其预设的所述沙箱环境中执行该可执行调试指令。
步骤S14,经所述数据通信链路获取所述执行端设备执行所述可执行调试指令后返回的执行结果信息:
所述合法用户的执行端设备在其所述沙箱环境中执行所述可执行调试指令,并根据执行该执行调试指令的执行结果所构造的所述执行结果信息,将该执行结果信息通过所述数据通信链路推送至当前调试服务器中。
请参考图4,当前调试服务器获取所述执行端设备通过所述数据通信链路推送的所述执行结果信息后,将该执行结果信息输出至执行结果信息输出窗口405中进行展示,以便当前调试服务器的管理用户通过该结果信息输出窗口405所输出的所述执行结果信息,了解所述可执行调试指令是否可解决被调试程序当前的故障,若其表征未解决,则管理用户根据所述执行结果信息所表征的故障,通过原始调试指令输入窗口403编写相应的原始调试指令进行推送,若表征解决,则所述可执行调试指令已解决所述被调试程序的故障。
为解决上述技术问题,本申请实施例还提供远程调试控制装置。具体请参阅图7,图7为本实施例远程调试控制装置基本结构示意图。
如图7所示,本申请的一种远程调试控制装置包括状态切换模块11、链路建立模块12、指令传输模块13以及结果获取模块14,其中:状态切换模块11,用于将当前调试服务器切换为处于开放接入状态,以供合法用户验证自身接入权限后请求通信服务器予以接入;链路建立模块12,用于获取通信服务器响应所述合法用户的接入请求后提供的连接配置信息进行本地配置,建立当前调试服务器与所述合法用户所在执行端设备之间经该通信服务器中继的数据通信链路;指令传输模块13,用于将可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行;结果获取模块14,用于经所述数据通信链路获取所述执行端设备执行所述可执行调试指令后返回的执行结果信息。
一种实施例中,所述状态切换模块11包括:信息接收子模块,用于接收所述合法用户所处执行端设备推送的程序故障位置信息;报障记录构造子模块,用于将所述程序故障位置信息与所述合法用户的用户特征信息构造为报障记录,存储于报障信息列表以供查询;指令响应子模块,用于响应基于所述报障信息列表中的报障记录的开放接入指令,将当前调试服务器切换为处于开放接入状态,以供所述合法用户验证自身接入权限后请求通信服务器予以接入。
一种实施例中,所述指令传输模块13包括:指令获取子模块,用于获取管理用户提交的原始调试指令,将其经所述数据通信链路给所述通信服务器;指令编译子模块,用于触发所述通信服务器对所述原始调试指令进行格式校验,并将通过格式校验的原始调试指令编译为可执行调试指令;指令传输子模块,用于由所述通信服务器将所述可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行。
另一种实施例中,所述指令传输模块13还包括:指令获取子模块,用于获取管理用户提交的原始调试指令,将其经所述数据通信链路给所述通信服务器;指令确定子模块,用于触发所述通信服务器对所述原始调试指令进行格式校验,并将通过格式校验的原始调试指令确定为可执行调试指令;指令传输子模块,用于由所述通信服务器将所述可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行。
请参阅图8所示本实施例远程调试执行方法的基本流程示意图。如图2所示,本申请一种远程调试执行方法,在其典型实施例中,包括如下步骤:
步骤S21,响应当前被调试程序触发的异常抛出事件,向调试服务器提交故障报告信息,该故障报告信息包括指示触发所述异常抛出事件的程序位置的故障位置信息及当前合法用户的用户特征信息:
合法用户的执行端设备响应当前被调试程序所触发的所述异常抛出事件,以向所述调试服务器提交该异常抛出事件相对应的所述故障报告信息,该故障报告信息包括所述异常抛出事件的程序位置的所述故障位置信息及当前合法用户的所述用户特征信息。
当所述合法用户的执行端设备所运行的程序出现故障时,该程序将触发所述异常事件,该程序将转换未所述被调试程序,被根据其所出现的故障的位置生成所述故障位置信息,并将该故障位置信息及该合法用户的所述用户特征信息封装未所述故障报告信息发送至所述调试服务器中。
所述调试服务器接收到所述故障报告信息后,将生成包含该故障信息中的用户特征信息的状态配置信息,将该状态配置信息存储至所述状态信息表中,且该调试服务器将自身切换为服务于该用户特征信息所指向的合法用户的开放接入状态。
一种实施例中,所述调试服务器接收到合法用户提交的所述故障报告信息后,将根据该故障报障信息中包含的所述用户特征信息,生成相应的开放接入指令,以响应该开放接入指令,将自身切换为服务于该用户特征信息所指向的合法用户的开放接入状态,并将生成包含该故障信息中的用户特征信息的状态配置信息存储至所述状态信息表中。
另一种实施例中,所述调试服务器接收到所述故障报告信息后,将该故障报告信息存储至故障信息列表中,该调试服务器有序处理该故障信息列表中存储的各故障报告信息,根据各故障报障信息中包含的所述用户特征信息,生成相应的开放接入指令,以响应该开放接入指令,将自身切换为服务于该用户特征信息所指向的合法用户的开放接入状态,并将生成包含该故障信息中的用户特征信息的状态配置信息存储至所述状态信息表中。
步骤S22,轮询远程存储的状态信息表,在其中查询所述调试服务器预先登记的状态配置信息,验证该状态配置信息是否包含当前合法用户的用户特征信息而确定是否对当前合法用户开放接入权限:
所述合法用户的执行端设备提交所述故障报告信息后,将查询远程存储的所述状态信息表,查询该状态信息表中其提交所述故障报告信息的调式服务器的预先登记的所述状态配置信息,并查询该状态配置信息中是否包含该合法用户的所述用户特征信息,以验证其自身是否拥有与该调试服务器进行数据通信链路的建立的所述开放接入权限,若包含,则其拥有所述开放接入权限,若不存在,则继续轮询所述状态信息表,直至所述状态配置信息中包含所述合法用户的所述用户特征信息,以获取所述开放接入权限。
关于所述状态信息表所存储的位置,请参考步骤S11中的相关实施例,本步骤恕不赘述。
步骤S23,在确认当前合法用户具有开放接入权限后,初始化被调试程序预配置的沙箱环境,向通信服务器发起接入请求,驱动服务器建立当前被调试程序与所述调试服务器之间的经通信服务器中继的数据通信链路:
所述合法用户的执行端设备查询所述调试服务器的状态配置信息中包含当前合法用户的用户特征信息,确认当前用户具有所述开放接入权限后,将初始化所述被调试查询预配置的所述沙箱环境,并向所述通信服务器发起指向所述调试服务器的所述接入请求,以启动该通信服务器建立当前被调试程序与该调试服务器直接的经所述调试服务器中继的所述数据通信链路。
所述通信服务器接收到所述接入请求后,将响应该接入请求,并将该接入请求所属的合法用户提供的连线配置信息发送至该接入请求所指向的调试服务器中,以触发调试服务器根据该接入请求继续本地配置,建立其与所述合法用户所在执行端设备经所述通信服务器中继的所述数据通信链路。
关于所述沙箱环境及数据通信链路等实施方式,请参考步骤S12及S13中相关的实施方式,本步骤恕不赘述。
步骤S24,从所述数据通信链路接收调试服务器传输的可执行调试指令,将其置于所述沙箱环境中执行,将执行结果信息通过所述数据通信链路返回给所述调试服务器:
当前合法用户的执行端设备从所述数据通信链路中接收所述调试服务器传输的所述可执行调试指令,并在当前被调试程序的所述沙箱环境中执行该可执行调试指令,获取该可执行调试指令的所述执行结果信息,并将该执行结果信息通过所述数据通信链路推送至所述调试服务器中。
所述执行结果信息用于表征所述可执行调试指令在所述沙箱环境中的执行结果,该沙箱环境根据所述执行调试指令所包含的编程语言,以修复当前被调试程序的故障报告信息中所表征的故障,若修复生成,则生成表征修复成功的所述执行结果信息,若修复失败,则生成表征修复失败及修复失败原因的所述执行结果信息。
由于直播应用程序的系统架构复杂,当其出现故障时,将严重破坏直播平台的用户体验,这种情况下,应用本申请的方案,通过调试服务器与被调试程序之间通过由通信服务器中继的数据通信链路进行故障环境的同步,可快速地定位应用程序出现故障的具体原因,以修复直播应用程序出现的故障,不仅保证了直播平台的用户的使用体验,同时也提升了直播应用程序的系统架构的整体鲁班性。
为解决上述技术问题,本申请实施例还提供远程调试执行装置。具体请参阅图9,图9为本实施例远程调试执行装置基本结构示意图。
如图9所示,本申请的一种远程调试执行装置包括信息提交模块21、状态轮询模块22、请求发起模块23以及指令执行模块24。其中,信息提交模块21,用于响应当前被调试程序触发的异常抛出事件,向调试服务器提交故障报告信息,该故障报告信息包括指示触发所述异常抛出事件的程序位置的故障位置信息及当前合法用户的用户特征信息;状态轮询模块22,用于轮询远程存储的状态信息表,在其中查询所述调试服务器预先登记的状态配置信息,验证该状态配置信息是否包含当前合法用户的用户特征信息而确定是否对当前合法用户开放接入权限;请求发起模块23,用于在确认当前合法用户具有开放接入权限后,初始化被调试程序预配置的沙箱环境,向通信服务器发起接入请求,驱动服务器建立当前被调试程序与所述调试服务器之间的经通信服务器中继的数据通信链路;指令执行模块24,用于从所述数据通信链路接收调试服务器传输的可执行调试指令,将其置于所述沙箱环境中执行,将执行结果信息通过所述数据通信链路返回给所述调试服务器。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图10,图10为本实施例计算机设备基本结构框图。
如图10所示,计算机设备的内部结构示意图。该计算机设备包括通过系统总线连接的处理器、非易失性存储介质、存储器和网络接口。其中,该计算机设备的非易失性存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种远程调试控制/执行方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种远程调试控制/执行方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本实施方式中处理器用于执行本发明的远程调试控制/执行装置中的各个模块/子模块的具体功能,存储器存储有执行上述模块所需的程序代码和各类数据。网络接口用于向用户终端或服务器之间的数据传输。本实施方式中的存储器存储有远程调试控制/执行装置中执行所有模块/子模块所需的程序代码及数据,服务器能够调用服务器的程序代码及数据执行所有子模块的功能。
本申请还提供一种非易失性存储介质,所述的远程调试控制方法或远程调试执行方法被编写成计算机程序,以计算机可读指令的形式存储于该存储介质中,计算机可读指令被一个或多个处理器执行时,意味着该程序在计算机中的运行,由此使得一个或多个处理器执行上述任一实施例远程调试控制方法或远程调试执行方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
综上所述,本申请通过建立被调试端、通信端及调试端三端之间的用于调试的数据通信链路,通过通信端为被调试端与调试端建立数据通信链路,以便被调试端通过该数据通信链路向调试端发送故障信息,调试端反馈可执行指令至被调试端的沙箱环境中进行执行,以获取被调试端的执行结果进行故障排查,由此实现双方的实时的数据互通链路,使调试端可高效地定位软件的报障,提升故障的解决效率。
本技术领域技术人员可以理解,本申请中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本申请中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本申请中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种远程调试控制方法,其特征在于,包括如下步骤:
将当前调试服务器切换为处于开放接入状态,以供合法用户验证自身接入权限后请求通信服务器予以接入;
获取通信服务器响应所述合法用户的接入请求后提供的连接配置信息进行本地配置,建立当前调试服务器与所述合法用户所在执行端设备之间经该通信服务器中继的数据通信链路;
将可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行;
经所述数据通信链路获取所述执行端设备执行所述可执行调试指令后返回的执行结果信息。
2.根据权利要求1所述的远程调试控制方法,其特征在于,将当前调试服务器切换为处于开放接入状态,以供合法用户验证自身接入权限后请求通信服务器予以接入,包括如下步骤:
接收所述合法用户所处执行端设备推送的程序故障位置信息;
将所述程序故障位置信息与所述合法用户的用户特征信息构造为报障记录,存储于报障信息列表以供查询;
响应基于所述报障信息列表中的报障记录的开放接入指令,将当前调试服务器切换为处于开放接入状态,以供所述合法用户验证自身接入权限后请求通信服务器予以接入。
3.根据权利要求1或2所述的远程调试控制方法,其特征在于,将当前调试服务器切换为处于开放接入状态,以供合法用户验证自身接入权限后请求通信服务器予以接入,包括:
向预设的状态信息表写入当前调试服务器的状态配置信息,所述状态配置信息包括被调试程序的合法用户的用户特征信息,以将当前调试服务器切换为处于对所述合法用户开放的开放接入状态,以使所述合法用户查询该状态信息表完成其自身接入权限的验证。
4.根据权利要求1所述的远程调试控制方法,其特征在于,将可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行,包括如下步骤:
获取管理用户提交的原始调试指令,将其经所述数据通信链路给所述通信服务器;
触发所述通信服务器对所述原始调试指令进行格式校验,并将通过格式校验的原始调试指令编译为可执行调试指令;
由所述通信服务器将所述可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行。
5.根据权利要求1所述的远程调试控制方法,其特征在于,将可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行,包括如下步骤:
获取管理用户提交的原始调试指令,将其经所述数据通信链路给所述通信服务器;
触发所述通信服务器对所述原始调试指令进行格式校验,并将通过格式校验的原始调试指令确定为可执行调试指令;
由所述通信服务器将所述可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行。
6.一种远程调试执行方法,其特征在于,包括如下步骤:
响应当前被调试程序触发的异常抛出事件,向调试服务器提交故障报告信息,该故障报告信息包括指示触发所述异常抛出事件的程序位置的故障位置信息及当前合法用户的用户特征信息;
轮询远程存储的状态信息表,在其中查询所述调试服务器预先登记的状态配置信息,验证该状态配置信息是否包含当前合法用户的用户特征信息而确定是否对当前合法用户开放接入权限;
在确认当前合法用户具有开放接入权限后,初始化被调试程序预配置的沙箱环境,向通信服务器发起接入请求,驱动服务器建立当前被调试程序与所述调试服务器之间的经通信服务器中继的数据通信链路;
从所述数据通信链路接收调试服务器传输的可执行调试指令,将其置于所述沙箱环境中执行,将执行结果信息通过所述数据通信链路返回给所述调试服务器。
7.一种远程调试控制装置,其特征在于,所述远程调试控制装置包括:
状态切换模块,用于将当前调试服务器切换为处于开放接入状态,以供合法用户验证自身接入权限后请求通信服务器予以接入;
链路建立模块,用于获取通信服务器响应所述合法用户的接入请求后提供的连接配置信息进行本地配置,建立当前调试服务器与所述合法用户所在执行端设备之间经该通信服务器中继的数据通信链路;
指令传输模块,用于将可执行调试指令经所述数据通信链路传输至所述执行端设备,使该可执行调试指令得以在该执行端设备的沙箱环境中执行;
结果获取模块,用于经所述数据通信链路获取所述执行端设备执行所述可执行调试指令后返回的执行结果信息。
8.一种远程调试执行装置,其特征在于,所述远程调试执行装置包括:
信息提交模块,用于响应当前被调试程序触发的异常抛出事件,向调试服务器提交故障报告信息,该故障报告信息包括指示触发所述异常抛出事件的程序位置的故障位置信息及当前合法用户的用户特征信息;
状态轮询模块,用于轮询远程存储的状态信息表,在其中查询所述调试服务器预先登记的状态配置信息,验证该状态配置信息是否包含当前合法用户的用户特征信息而确定是否对当前合法用户开放接入权限;
请求发起模块,用于在确认当前合法用户具有开放接入权限后,初始化被调试程序预配置的沙箱环境,向通信服务器发起接入请求,驱动服务器建立当前被调试程序与所述调试服务器之间的经通信服务器中继的数据通信链路;
指令执行模块,用于从所述数据通信链路接收调试服务器传输的可执行调试指令,将其置于所述沙箱环境中执行,将执行结果信息通过所述数据通信链路返回给所述调试服务器。
9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如权利要求1至6中任一项权利要求所述远程调试控制方法的步骤。
10.一种存储有计算机可读指令的存储介质,其特征在于,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至6中任一项权利要求所述远程调试控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110793895.9A CN113419962A (zh) | 2021-07-14 | 2021-07-14 | 远程调试控制、执行方法及其装置、设备、介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110793895.9A CN113419962A (zh) | 2021-07-14 | 2021-07-14 | 远程调试控制、执行方法及其装置、设备、介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113419962A true CN113419962A (zh) | 2021-09-21 |
Family
ID=77720942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110793895.9A Pending CN113419962A (zh) | 2021-07-14 | 2021-07-14 | 远程调试控制、执行方法及其装置、设备、介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113419962A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116012123A (zh) * | 2023-03-27 | 2023-04-25 | 湖南三湘银行股份有限公司 | 一种基于Rete算法的风控规则引擎方法及系统 |
-
2021
- 2021-07-14 CN CN202110793895.9A patent/CN113419962A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116012123A (zh) * | 2023-03-27 | 2023-04-25 | 湖南三湘银行股份有限公司 | 一种基于Rete算法的风控规则引擎方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230106675A1 (en) | Api driven continuous testing systems for testing disparate software | |
US20200074329A1 (en) | Intelligent adaptor service in unified automation platforms for robotic process automation | |
US7904527B2 (en) | System and method for remote servicing of embedded devices | |
US10698745B2 (en) | Adapter extension for inbound messages from robotic automation platforms to unified automation platform | |
WO2023125852A1 (zh) | 远程诊断方法及装置、电子设备和存储介质 | |
CN104765678A (zh) | 对移动终端设备上的应用进行测试的方法及装置 | |
CN113419940B (zh) | 程序日志采集、回归方法及其相应的装置、设备、介质 | |
CN104536890A (zh) | 测试系统、方法和装置 | |
US11362912B2 (en) | Support ticket platform for improving network infrastructures | |
WO2023125851A1 (zh) | 远程诊断方法及装置、电子设备和存储介质 | |
CN113946358A (zh) | 一种基于车辆管理系统的自动驾驶车辆软件远程升级方法 | |
WO2023125591A1 (zh) | 远程诊断方法及装置、系统、电子设备和存储介质 | |
CN112114865A (zh) | 版本数据的处理方法和装置、存储介质和电子装置 | |
CN115454869A (zh) | 界面自动化测试方法、装置、设备及存储介质 | |
US20200012479A1 (en) | Intelligent checking engine | |
CN112306887A (zh) | 程序测试分发方法及其相应的装置、设备、介质 | |
CN113419962A (zh) | 远程调试控制、执行方法及其装置、设备、介质 | |
CN116414521A (zh) | 分布异构靶场的虚拟机远程命令交互方法、装置及介质 | |
CN109683780A (zh) | 控制移动终端的方法、系统和被控终端 | |
CN112199283A (zh) | 程序测试控制、执行方法及其相应的装置、设备、介质 | |
US8538414B1 (en) | Mobile interaction with software test cases | |
CN103546563A (zh) | 终端软件智能更新方法及系统 | |
US11948406B2 (en) | Nautical device diagnosis apparatus, remote nautical device surveillance system, nautical device diagnosis method, and nautical device diagnosis computer-readable media | |
CN105335145A (zh) | 操作结果处理方法、装置及系统 | |
US20230007894A1 (en) | Intelligent Dynamic Web Service Testing Apparatus in a Continuous Integration and Delivery Environment |
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 |