WO2021120544A1 - 用于调试设备的方法及装置 - Google Patents
用于调试设备的方法及装置 Download PDFInfo
- Publication number
- WO2021120544A1 WO2021120544A1 PCT/CN2020/095191 CN2020095191W WO2021120544A1 WO 2021120544 A1 WO2021120544 A1 WO 2021120544A1 CN 2020095191 W CN2020095191 W CN 2020095191W WO 2021120544 A1 WO2021120544 A1 WO 2021120544A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- target
- log
- template
- running
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- 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
- G06F11/3648—Software debugging using additional hardware
- G06F11/3656—Software debugging using additional hardware using a specific debug interface
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0706—Error 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/0709—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
- G06F11/3072—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
- G06F11/3075—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved in order to maintain consistency among the monitored data, e.g. ensuring that the monitored data belong to the same timeframe, to the same system or component
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/324—Display of status information
- G06F11/328—Computer systems status display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- 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
- G06F11/366—Software debugging using diagnostics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/81—Threshold
Definitions
- the above-mentioned template construction unit includes: a log information determining subunit, configured to determine the log information corresponding to the running configuration information for the running configuration information in the at least one piece of running configuration information; the log collection template encapsulating subunit The unit is configured to encapsulate at least one item of log information corresponding to the above-mentioned at least one item of operation configuration information into a log collection template.
- the embodiments of the present disclosure provide an electronic device, including: one or more processors; a memory, on which one or more programs are stored, when the above one or more programs are used by the above one or more When the processor is executed, the one or more processors are caused to execute the method for debugging a device in the first aspect or the method for debugging a device in the second aspect.
- the foregoing construction of the running configuration template and the log collection template according to the target running status information may include the following steps:
- Step 206 Modify the running configuration template according to the state difference information to obtain an updated running configuration template, and send the updated running configuration template to the edge computing device, so that the edge computing device debugs the target device.
- FIG. 3 is a schematic diagram of an application scenario of the method for debugging a device according to this embodiment.
- the cloud server 106 first obtains the target operating status information of the terminal device 102, and constructs an operating configuration template and a log collection template according to the target operating status information. Then, the cloud server 106 sends the running configuration template and the log collection template to the edge computing device 104. The edge computing device 104 is in communication connection with the terminal device 102. After receiving the running configuration template and the log collection template, the first control instruction is generated, and the first control instruction is sent to the terminal device 102. The terminal device 102 runs according to the first control instruction to generate target log information.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Environmental & Geological Engineering (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Debugging And Monitoring (AREA)
Abstract
本公开的实施例公开了用于调试设备的方法及装置。该方法的一具体实施方式包括:获取目标设备的目标运行状态信息;根据上述目标运行状态信息构建运行配置模板和日志采集模板;将上述运行配置模板和日志采集模板发送给边缘计算设备,并接收上述边缘计算设备发来的目标日志信息,进而确定实际运行状态信息;当实际运行状态信息与目标运行状态信息不同时,计算状态差值信息;最后通过上述状态差值信息对上述运行配置模板进行修改,得到更新运行配置模板,将上述更新运行配置模板发送给边缘计算设备,以使得上述边缘计算设备对上述目标设备进行调试。该实施方式提高了边缘计算环境下对目标设备的调试效率。
Description
本专利申请要求于2019年12月20日提交的、申请号为201911326334.7、申请人为北京百度网讯科技有限公司、发明名称为“用于调试设备的方法及装置”的中国专利申请的优先权,该申请的全文以引用的方式并入本申请中。
本公开的实施例涉及云计算技术领域,具体涉及用于调试设备的方法及装置。
在物联网、边缘计算等场景下,智能设备部署在靠近物或者数据源头的网络端侧。端侧的智能设备由于部署现场距离未知、工况复杂、硬件能力较弱、网速不稳定等因素,导致技术人员在进行边缘计算的智能设备出错时调试不便,难以及时定位错误信息。
当前针对边缘计算设备的调试方法,一是:技术人员到达设备现场,通过外接屏幕和键盘直接登录设备查看相应的程序日志,定位错误信息,实地调试;二是远程调试,即技术人员基于云端对边缘计算设备进行远程登录访问,然后查看和定位错误信息。
发明内容
本公开的实施例提出了用于调试设备的方法及装置。
第一方面,本公开的实施例提供了一种用于调试设备的方法,该方法包括:获取目标设备的目标运行状态信息,上述目标运行状态信息用于表征上述目标设备正常运行时的目标运行状态;根据上述目标运行状态信息构建运行配置模板和日志采集模板,上述运行配置模板用于上述目标设备运行在目标运行状态时的指定至少一项运行配置信息,上述日志采集模板用于指示边缘计算设备采集上述目标设备根据上述运行配置信息运行时的至少一项目标日志信息,上述边缘计算设 备与上述目标设备电连接;将上述运行配置模板和日志采集模板发送给边缘计算设备,并接收上述边缘计算设备发来的目标日志信息;通过上述目标日志信息确定上述目标设备的实际运行状态信息;响应于上述实际运行状态信息与目标运行状态信息不同,确定上述实际运行状态信息与目标运行状态信息之间的状态差值信息;通过上述状态差值信息对上述运行配置模板进行修改,得到更新运行配置模板,将上述更新运行配置模板发送给边缘计算设备,以使得上述边缘计算设备对上述目标设备进行调试。
在一些实施例中,上述获取目标设备的目标运行状态信息,包括:获取上述目标设备的峰值信息,上述峰值信息包括以下至少一项:处理器频率峰值、内存使用量峰值、网络带宽峰值、无故障时间峰值;按照设定条件确定对应上述峰值信息的目标运行状态信息,上述设定条件包括以下至少一项:设定阈值、目标任务,上述设定阈值用于表征峰值信息与目标运行状态信息之间的比例关系,上述目标运行状态信息包括至少一条子目标运行状态信息。
在一些实施例中,上述根据上述目标运行状态信息构建运行配置模板和日志采集模板,包括:获取上述目标设备的设备信息,上述设备信息包括以下至少一项:硬件信息和软件信息;将上述设备信息与上述目标运行状态信息进行匹配,确定上述目标设备的至少一项运行配置信息;将上述至少一项运行配置信息封装成运行配置模板。。
在一些实施例中,上述根据上述目标运行状态信息构建运行配置模板和日志采集模板,包括:对于上述至少一项运行配置信息中的运行配置信息,确定对应该运行配置信息的日志信息;将对应上述至少一项运行配置信息的至少一项日志信息封装成日志采集模板。
在一些实施例中,上述目标日志信息包括至少一条日志信息,以及,上述通过上述目标日志信息确定上述目标设备的实际运行状态信息,包括:对于上述目标日志信息内的至少一条日志信息中的日志信息,查询该日志信息对应的子运行状态信息;将上述至少一条日志信息对应的至少一条子运行状态信息组合起来构成上述目标设备的实际运行状态信息。
第二方面,本公开的实施例提供了一种用于调试设备的方法,该方法包括:接收云端发来的运行配置模板和日志采集模板,上述运行配置模板用于上述目标设备运行在目标运行状态时指定的至少一项运行配置信息,上述日志采集模板用 于指示边缘计算设备采集上述目标设备根据上述运行配置信息运行时的至少一项目标日志信息;根据上述运行配置模板内的运行配置信息生成第一控制指令,并将上述第一控制指令发送给上述目标设备;响应于检测到对应上述第一控制指令的、上述目标设备的目标日志信息,将上述目标日志信息发送至上述云端;接收上述云端发来的更新运行配置模板,根据上述更新运行配置模板内的运行配置信息生成第二控制指令,并将上述第二控制指令发送给上述目标设备。
在一些实施例中,上述根据上述运行配置模板内的运行配置信息生成第一控制指令,包括:从上述运行配置模板中解析出至少一项运行配置信息;对于上述至少一项运行配置信息中的运行配置信息,生成对应该运行配置信息的第一控制子指令。
在一些实施例中,上述方法还包括:响应于将上述第一控制指令发送至上述目标设备,监测上述目标设备的设备日志信息;响应于检测到上述设备日志信息,将上述设备日志信息中的、对应运行配置信息的至少一条日志信息标记为对应上述第一控制指令的目标日志信息。
第三方面,本公开的实施例提供了一种用于调试设备的装置,该装置包括:目标运行状态信息获取单元,被配置成获取目标设备的目标运行状态信息,上述目标运行状态信息用于表征上述目标设备正常运行时的目标运行状态;模板构建单元,被配置成根据上述目标运行状态信息构建运行配置模板和日志采集模板,上述运行配置模板用于上述目标设备运行在目标运行状态时的指定至少一项运行配置信息,上述日志采集模板用于指示边缘计算设备采集上述目标设备根据上述运行配置信息运行时的至少一项目标日志信息,上述边缘计算设备与上述目标设备电连接;信息交互单元,被配置成将上述运行配置模板和日志采集模板发送给边缘计算设备,并接收上述边缘计算设备发来的目标日志信息;实际运行状态信息确定单元,被配置成通过上述目标日志信息确定上述目标设备的实际运行状态信息;状态差值信息确定单元,响应于上述实际运行状态信息与目标运行状态信息不同,被配置成确定上述实际运行状态信息与目标运行状态信息之间的状态差值信息;调试单元,被配置成通过上述状态差值信息对上述运行配置模板进行修改,得到更新运行配置模板,将上述更新运行配置模板发送给边缘计算设备,以使得上述边缘计算设备对上述目标设备进行调试。
在一些实施例中,上述目标运行状态信息获取单元包括:峰值信息获取子单 元,被配置成获取上述目标设备的峰值信息,上述峰值信息包括以下至少一项:处理器频率峰值、内存使用量峰值、网络带宽峰值、无故障时间峰值;目标运行状态信息确定子单元,被配置成按照设定条件确定对应上述峰值信息的目标运行状态信息,上述设定条件包括以下至少一项:设定阈值、目标任务,上述设定阈值用于表征峰值信息与目标运行状态信息之间的比例关系,上述目标运行状态信息包括至少一条子目标运行状态信息。
在一些实施例中,上述模板构建单元包括:设备信息获取子单元,被配置成获取上述目标设备的设备信息,上述设备信息包括以下至少一项:硬件信息和软件信息;运行配置信息匹配子单元,被配置成将上述设备信息与上述目标运行状态信息进行匹配,确定上述目标设备的至少一项运行配置信息;运行配置模板封装子单元,被配置成将上述至少一项运行配置信息封装成运行配置模板。
在一些实施例中,上述模板构建单元包括:日志信息确定子单元,对于上述至少一项运行配置信息中的运行配置信息,被配置成确定对应该运行配置信息的日志信息;日志采集模板封装子单元,被配置成将对应上述至少一项运行配置信息的至少一项日志信息封装成日志采集模板。
在一些实施例中,上述目标日志信息包括至少一条日志信息,以及,上述实际运行状态信息确定单元包括:子运行状态信息查询子单元,对于上述目标日志信息内的至少一条日志信息中的日志信息,被配置成查询该日志信息对应的子运行状态信息;信息组合子单元,被配置成将上述至少一条日志信息对应的至少一条子运行状态信息组合起来构成上述目标设备的实际运行状态信息。
第四方面,本公开的实施例提供了一种用于调试设备的装置,该装置包括:模板接收单元,被配置成接收云端发来的运行配置模板和日志采集模板,上述运行配置模板用于上述目标设备运行在目标运行状态时指定的至少一项运行配置信息,上述日志采集模板用于指示边缘计算设备采集上述目标设备根据上述运行配置信息运行时的至少一项目标日志信息;第一控制单元,被配置成根据上述运行配置模板内的运行配置信息生成第一控制指令,并将上述第一控制指令发送给上述目标设备;目标日志信息发送单元,响应于检测到对应上述第一控制指令的、上述目标设备的目标日志信息,被配置成将上述目标日志信息发送至上述云端;第二控制单元,被配置成接收上述云端发来的更新运行配置模板,根据上述更新运行配置模板内的运行配置信息生成第二控制指令,并将上述第二控制指令发送 给上述目标设备。
在一些实施例中,上述第一控制单元包括:运行配置信息解析子单元,被配置成从上述运行配置模板中解析出至少一项运行配置信息;第一控制子指令生成子单元,对于上述至少一项运行配置信息中的运行配置信息,被配置成生成对应该运行配置信息的第一控制子指令。
在一些实施例中,上述装置还包括:设备日志信息监测单元,响应于将上述第一控制指令发送至上述目标设备,被配置成监测上述目标设备的设备日志信息;目标日志信息筛选单元,响应于检测到上述设备日志信息,被配置成将上述设备日志信息中的、对应运行配置信息的至少一条日志信息标记为对应上述第一控制指令的目标日志信息。
第五方面,本公开的实施例提供了一种电子设备,包括:一个或多个处理器;存储器,其上存储有一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器执行上述第一方面的用于调试设备的方法或第二方面的用于调试设备的方法。
第六方面,本公开的实施例提供了一种计算机可读介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现上述第一方面的用于调试设备的方法或第二方面的用于调试设备的方法。
本公开的实施例提供的用于调试设备的方法及装置,获取目标设备的目标运行状态信息;根据上述目标运行状态信息构建运行配置模板和日志采集模板;将上述运行配置模板和日志采集模板发送给边缘计算设备,并接收上述边缘计算设备发来的目标日志信息,进而确定实际运行状态信息;当实际运行状态信息与目标运行状态信息不同时,计算状态差值信息;最后通过上述状态差值信息对上述运行配置模板进行修改,得到更新运行配置模板,将上述更新运行配置模板发送给边缘计算设备,以使得上述边缘计算设备对上述目标设备进行调试。本申请可以远程对目标设备进行调试,提高了边缘计算环境下对目标设备的调试效率。
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
图1是本公开的一个实施例可以应用于其中的示例性系统架构图;
图2是根据本公开的用于调试设备的方法的一个实施例的流程图;
图3是根据本公开的用于调试设备的方法的一个应用场景的示意图;
图4是根据本公开的用于调试设备的方法的另一个实施例的流程图;
图5是根据本公开的用于调试设备的装置的一个实施例的结构示意图;
图6是根据本公开的用于调试设备的装置的另一个实施例的结构示意图;
图7是适于用来实现本公开的实施例的电子设备结构示意图。
下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
图1示出了可以应用本公开的实施例的用于调试设备的方法或用于调试设备的装置的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,边缘计算设备104、网络105和云端服务器106。网络105用以在边缘计算设备104和云端服务器106之间提供通信链路的介质。网络105可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
终端设备101、102、103可以与边缘计算设备104进行通信,以实现数据处理。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏并且支持数据处理的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块,在此不做具体限定。
边缘计算设备104上安装有用于边缘计算的程序。边缘计算设备104可以对 终端设备101、102、103发来的数据处理请求等数据进行分析处理,并将数据处理结果返回给终端设备101、102、103。
云端服务器106可以通过网络105与边缘计算设备104进行数据交互,接收边缘计算设备104发来的待处理信息,并将处理结果发送给边缘计算设备104。
需要说明的是,本公开的实施例所提供的用于调试设备的方法可以由云端服务器106单独执行,或者也可以由云端服务器106和边缘计算设备104共同执行。相应地,用于调试设备的装置可以设置于云端服务器106中,也可以设置于边缘计算设备104中。
需要说明的是,云端服务器106和边缘计算设备104可以是硬件,也可以是软件。当云端服务器106和边缘计算设备104为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当云端服务器106和边缘计算设备104为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块,在此不做具体限定。
应该理解,图1中的终端设备、边缘计算设备、网络和云端服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、边缘计算设备、网络和云端服务器。
继续参考图2,示出了根据本公开的用于调试设备的方法的一个实施例的流程200。该用于调试设备的方法包括以下步骤:
步骤201,获取目标设备的目标运行状态信息。
在本实施例中,用于调试设备的方法的执行主体(例如图1所示的云端服务器106)可以通过有线连接方式或者无线连接方式获取目标设备(即图1中的终端设备101、102、103)的目标运行状态信息。需要指出的是,上述无线连接方式可以包括但不限于3G/4G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(Ultra Wideband)连接、以及其他现在已知或将来开发的无线连接方式。
当前,为了实现对目标设备的调试,通常需要技术人员到目标设备所在的现场进行调试操作。而实际中,目标设备分布广泛,且存在现场的环境复杂等问题。而且,实际中的目标设备的数量也巨大,技术人员需要花费大量时间才能完成对目标设备的调试。一旦目标设备存在的故障,技术人员又需要到目标设备所在的现场进行调试。如此,使得目标设备的调试效率不高。
为此,本申请在对目标设备进行调试前,首先获取目标设备的目标运行状态信息。其中,上述目标运行状态信息可以用于表征上述目标设备正常运行时的目标运行状态。目标运行状态信息可以是用户向执行主体注册时在执行主体上记录的。
在本实施例的一些可选的实现方式中,上述获取目标设备的目标运行状态信息,可以包括以下步骤:
第一步,获取上述目标设备的峰值信息。
目标设备的各项指标都有峰值信息(即最大值)。峰值信息可以用于表征目标设备的各项指标最大的承受能力。上述峰值信息可以包括以下至少一项:处理器频率峰值、内存使用量峰值、网络带宽峰值、无故障时间峰值。对于不同的目标设备,峰值信息可以不同。
第二步,按照设定条件确定对应上述峰值信息的目标运行状态信息。
根据实际需要,目标设备可以按照设定条件来确定目标运行状态信息。即,目标运行状态信息为根据峰值信息和设定条件确定下来的状态信息。其中,上述设定条件可以包括以下至少一项:设定阈值、目标任务。上述设定阈值可以用于表征峰值信息与目标运行状态信息之间的比例关系。上述目标运行状态信息可以包括至少一条子目标运行状态信息。例如,子目标运行状态信息可以处理器利用率:85%;内存利用率:90%等。
步骤202,根据上述目标运行状态信息构建运行配置模板和日志采集模板。
得到目标运行状态信息后,执行主体可以根据目标运行状态信息来构建对应目标设备的运行配置模板和日志采集模板。其中,上述运行配置模板可以用于指定上述目标设备运行在目标运行状态时的至少一项运行配置信息。运行配置信息可以是目标设备的具体的硬件或软件的工作状态。上述日志采集模板可以用于指示边缘计算设备采集上述目标设备根据上述运行配置信息运行时的至少一项目标日志信息。上述边缘计算设备与上述目标设备电连接。通过构建对应目标运行状态信息的运行配置模板和日志采集模板,使得对目标设备的有了调试标准,有利于对目标设备的自动、准确地调试。
在本实施例的一些可选的实现方式中,上述根据上述目标运行状态信息构建运行配置模板和日志采集模板,可以包括以下步骤:
第一步,获取上述目标设备的设备信息。
为了对目标设备进行配置,执行主体可以首先获取目标设备的设备信息。其中,上述设备信息包括以下至少一项:硬件信息和软件信息。硬件信息可以是处理器信息、内存信息、硬盘信息、无线模块信息等。软件信息可以是操作系统信息、应用版本信息等。
第二步,将上述设备信息与上述目标运行状态信息进行匹配,确定上述目标设备的至少一项运行配置信息。
目标运行状态信息为根据峰值信息和设定条件确定下来的状态信息。在获取到目标设备的设备信息后,执行主体可以将设备信息与上述目标运行状态信息进行匹配,进而确定上述目标设备的至少一项运行配置信息。例如,目标运行状态信息可以是每秒处理多少数据量。此时,执行主体可以根据目标设备的硬件信息和软件信息,确定处理器的工作频率、运行的软件时内存的占用量等。其中,处理器的工作频率和运行的软件时内存的占用量就可以是两条运行配置信息。
第三步,将上述至少一项运行配置信息封装成运行配置模板。
确定至少一项运行配置信息后,执行主体可以将至少一项运行配置信息封装成运行配置模板。具体的,运行配置模板可以包含目标设备的标识的数据表或压缩包等。
在本实施例的一些可选的实现方式中,上述根据上述目标运行状态信息构建运行配置模板和日志采集模板,可以包括以下步骤:
第一步,对于上述至少一项运行配置信息中的运行配置信息,确定对应该运行配置信息的日志信息。
确定了运行配置信息后,执行主体可以针对该运行配置信息设定对应的日志信息。例如,运行配置信息为处理器的工作频率,对应的日志信息就可以是监控处理器的工作频率的日志信息。
第二步,将对应上述至少一项运行配置信息的至少一项日志信息封装成日志采集模板。
确定了日志信息后,执行主体可以将日志信息封装成日志采集模板。日志采集模板可以包含对应的目标设备的标识。
步骤203,将上述运行配置模板和日志采集模板发送给边缘计算设备,并接收上述边缘计算设备发来的目标日志信息。
得到运行配置模板和日志采集模板后,执行主体可以将运行配置模板和日志 采集模板发送给与目标设备相关的边缘计算设备。边缘计算设备根据运行配置模板和日志采集模板对目标设备进行操作,可以获取到对应目标设备的目标日志信息。之后,边缘计算设备可以将目标日志信息返回给执行主体。
步骤204,通过上述目标日志信息确定上述目标设备的实际运行状态信息。
得到边缘计算设备返回的目标日志信息后,执行主体可以对目标日志信息进行分析,以判断确定上述目标设备的实际运行状态信息。
在本实施例的一些可选的实现方式中,上述目标日志信息包括至少一条日志信息,以及,上述通过上述目标日志信息确定上述目标设备的实际运行状态信息,可以包括以下步骤:
第一步,对于上述目标日志信息内的至少一条日志信息中的日志信息,查询该日志信息对应的子运行状态信息。
由上述描述可知,日志采集模板包含的日志信息与运行配置模板包含的运行配置信息对应。边缘计算设备根据运行配置模板包含的运行配置信息对目标设备进行配置后,根据采集日志采集模板来采集目标日志信息。即,目标日志信息与运行配置信息也是对应的,反映了目标设备在运行配置信息下的实际的运行状态。
在获取到目标日志信息后,执行主体可以根据目标日志信息包含的日志信息来确定目标设备的子运行状态信息。例如,子运行状态信息可以是处理器利用率:80%。内存利用率为60%等。
第二步,将上述至少一条日志信息对应的至少一条子运行状态信息组合起来构成上述目标设备的实际运行状态信息。
当子运行状态信息为处理器利用率:80%,内存利用率为60%时,对应的实际运行状态信息可以是处理器利用率:80%,内存利用率为60%。
步骤205,响应于上述实际运行状态信息与目标运行状态信息不同,确定上述实际运行状态信息与目标运行状态信息之间的状态差值信息。
当实际运行状态信息与目标运行状态信息不同时,说明目标设备根据运行配置模板运行时不能达到设定的目标运行状态。为了对目标设备进行调试,执行主体可以首先确定实际运行状态信息与目标运行状态信息之间的状态差值信息。例如,日志信息对应的子运行状态信息可以是:处理器利用率:80%。子目标运行状态信息可以是处理器利用率:85%。则对应的状态差值信息可以是5%。
步骤206,通过上述状态差值信息对上述运行配置模板进行修改,得到更新运行配置模板,将上述更新运行配置模板发送给边缘计算设备,以使得上述边缘计算设备对上述目标设备进行调试。
得到状态差值信息后,执行主体可以对运行配置模板内的运行配置信息进行调整,得到调整后的更新运行配置模板。之后,执行主体可以将更新运行配置模板发送给边缘计算设备,以使得上述边缘计算设备对上述目标设备进行调试。如此循环,直到目标设备的运行状态满足目标运行状态信息为止。可见,本申请可以远程对目标设备进行调试,提高了边缘计算环境下对目标设备的调试效率。
继续参见图3,图3是根据本实施例的用于调试设备的方法的应用场景的一个示意图。在图3的应用场景中,云端服务器106首先获取终端设备102的目标运行状态信息,并根据目标运行状态信息构建运行配置模板和日志采集模板。然后,云端服务器106将运行配置模板和日志采集模板发送给边缘计算设备104。边缘计算设备104与终端设备102通信连接。在接收到运行配置模板和日志采集模板后,生成第一控制指令,并将第一控制指令发送给终端设备102。终端设备102按照第一控制指令运行,生成目标日志信息。边缘计算设备104监测到目标日志信息后,将目标日志信息发送给云端服务器106。云端服务器106根据目标日志信息确定终端设备102的实际运行状态信息,并根据实际运行状态信息得到更新运行配置模板。之后,云端服务器106将更新运行配置模板发送给边缘计算设备104。边缘计算设备104根据更新运行配置模板生成第二控制指令,使得终端设备102按照第二控制指令运行。如此反复多次,最终使得终端设备102的实际运行状态信息与目标运行状态信息相同,自动完成对边缘计算环境下终端设备102的远程调试。
本公开的上述实施例提供的方法获取目标设备的目标运行状态信息;根据上述目标运行状态信息构建运行配置模板和日志采集模板;将上述运行配置模板和日志采集模板发送给边缘计算设备,并接收上述边缘计算设备发来的目标日志信息,进而确定实际运行状态信息;当实际运行状态信息与目标运行状态信息不同时,计算状态差值信息;最后通过上述状态差值信息对上述运行配置模板进行修改,得到更新运行配置模板,将上述更新运行配置模板发送给边缘计算设备,以使得上述边缘计算设备对上述目标设备进行调试。本申请可以远程对目标设备进行调试,提高了边缘计算环境下对目标设备的调试效率。
进一步参考图4,其示出了用于调试设备的方法的又一个实施例的流程400。该用于调试设备的方法的流程400,包括以下步骤:
步骤401,接收云端发来的运行配置模板和日志采集模板。
在本实施例中,用于调试设备的方法的执行主体(例如图1所示的边缘计算设备104)可以通过有线连接方式或者无线连接方式接收云端发来的运行配置模板和日志采集模板。
执行主体可以通过网络105与云端(即云端服务器106)进行信息交互,并接收云端发来的运行配置模板和日志采集模板。其中,上述运行配置模板可以用于上述目标设备运行在目标运行状态时的指定至少一项运行配置信息。上述日志采集模板用于指示边缘计算设备采集上述目标设备根据上述运行配置信息运行时的至少一项目标日志信息。
步骤402,根据上述运行配置模板内的运行配置信息生成第一控制指令,并将上述第一控制指令发送给上述目标设备。
执行主体获取到运行配置模板后,可以从运行配置模板内解析出运行配置信息。然后,执行主体可以查询目标设备对应的该运行配置信息的控制指令,并生成对应该运行配置信息的第一控制指令。之后,执行主体可以将第一控制指令发送给目标设备,以使得目标设备执行第一控制指令。
在本实施例的一些可选的实现方式中,上述根据上述运行配置模板内的运行配置信息生成第一控制指令,可以包括以下步骤:
第一步,从上述运行配置模板中解析出至少一项运行配置信息。
为了生成第一控制指令,执行主体可以首先从运行配置模板中解析出至少一项运行配置信息。
第二步,对于上述至少一项运行配置信息中的运行配置信息,生成对应该运行配置信息的第一控制子指令。
执行主体可以查询运行配置信息对应的内容。例如,当运行配置信息为处理器的工作频率时,运行配置信息对应的内容就可以是:“处理器”和“频率”,执行主体可以查询目标设备对应处理器的控制指令。然后,对控制指令中对应的内容修改为“频率”,从而得到第一控制子指令。
在本实施例的一些可选的实现方式中,上述方法还可以包括以下步骤:
第一步,响应于将上述第一控制指令发送至上述目标设备,监测上述目标设 备的设备日志信息。
将第一控制指令发送至上述目标设备后,执行主体可以监测目标设备的设备日志信息,以获取对应第一控制指令的日志信息。
第二步,响应于检测到上述设备日志信息,将上述设备日志信息中的、对应运行配置信息的至少一条日志信息标记为对应上述第一控制指令的目标日志信息。
目标设备的设备日志信息通常包含很多信息。为了查询目标设备执行第一控制指令的结果,执行主体可以将设备日志信息中的、对应运行配置信息的至少一条日志信息标记为对应上述第一控制指令的目标日志信息。
步骤403,响应于检测到对应上述第一控制指令的、上述目标设备的目标日志信息,将上述目标日志信息发送至上述云端。
当执行主体检测到目标设备执行上述第一控制指令后生成的目标日志信息时,可以将上述目标日志信息发送至上述云端。
实际中,在向云端发送信息时,还需要对上传数据进行脱敏(去除敏感信息)、协议解析、格式转换等操作,具体视实际需要而定。
步骤404,接收上述云端发来的更新运行配置模板,根据上述更新运行配置模板内的运行配置信息生成第二控制指令,并将上述第二控制指令发送给上述目标设备。
云端可以根据目标日志信息对运行配置模板进行修改,得到更新运行配置模板,并将更新运行配置模板发送给执行主体。执行主体可以再次根据更新运行配置模板内的运行配置信息生成第二控制指令,并将上述第二控制指令发送给上述目标设备,直到目标设备的运行状态满足目标运行状态信息为止。如此,实现了云端远程对目标设备进行调试,提高了边缘计算环境下对目标设备的调试效率。
进一步参考图5,作为对上述各图所示方法的实现,本公开提供了一种用于调试设备的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的用于调试设备的装置500可以包括:目标运行状态信息获取单元501、模板构建单元502、信息交互单元503、实际运行状态信息确定单元504、状态差值信息确定单元505和调试单元506。其中,目标运行状态信息获取单元501被配置成获取目标设备的目标运行状态信息,上述目标运行状 态信息用于表征上述目标设备正常运行时的目标运行状态;模板构建单元502被配置成根据上述目标运行状态信息构建运行配置模板和日志采集模板,上述运行配置模板用于上述目标设备运行在目标运行状态时的指定至少一项运行配置信息,上述日志采集模板用于指示边缘计算设备采集上述目标设备根据上述运行配置信息运行时的至少一项目标日志信息,上述边缘计算设备与上述目标设备电连接;信息交互单元503被配置成将上述运行配置模板和日志采集模板发送给边缘计算设备,并接收上述边缘计算设备发来的目标日志信息;实际运行状态信息确定单元504被配置成通过上述目标日志信息确定上述目标设备的实际运行状态信息;状态差值信息确定单元505,响应于上述实际运行状态信息与目标运行状态信息不同,被配置成确定上述实际运行状态信息与目标运行状态信息之间的状态差值信息;调试单元506被配置成通过上述状态差值信息对上述运行配置模板进行修改,得到更新运行配置模板,将上述更新运行配置模板发送给边缘计算设备,以使得上述边缘计算设备对上述目标设备进行调试。
在本实施例的一些可选的实现方式中,上述目标运行状态信息获取单元501可以包括:峰值信息获取子单元(图中未示出)和目标运行状态信息确定子单元(图中未示出)。其中,峰值信息获取子单元被配置成获取上述目标设备的峰值信息,上述峰值信息包括以下至少一项:处理器频率峰值、内存使用量峰值、网络带宽峰值、无故障时间峰值;目标运行状态信息确定子单元被配置成按照设定条件确定对应上述峰值信息的目标运行状态信息,上述设定条件包括以下至少一项:设定阈值、目标任务,上述设定阈值用于表征峰值信息与目标运行状态信息之间的比例关系,上述目标运行状态信息包括至少一条子目标运行状态信息。
在本实施例的一些可选的实现方式中,上述模板构建单元502可以包括:设备信息获取子单元(图中未示出)、运行配置信息匹配子单元(图中未示出)和运行配置模板封装子单元(图中未示出)。其中,设备信息获取子单元被配置成获取上述目标设备的设备信息,上述设备信息包括以下至少一项:硬件信息和软件信息;运行配置信息匹配子单元被配置成将上述设备信息与上述目标运行状态信息进行匹配,确定上述目标设备的至少一项运行配置信息;运行配置模板封装子单元被配置成将上述至少一项运行配置信息封装成运行配置模板。
在本实施例的一些可选的实现方式中,上述模板构建单元502可以包括:日志信息确定子单元(图中未示出)和日志采集模板封装子单元(图中未示出)。 其中,日志信息确定子单元,对于上述至少一项运行配置信息中的运行配置信息,被配置成确定对应该运行配置信息的日志信息;日志采集模板封装子单元被配置成将对应上述至少一项运行配置信息的至少一项日志信息封装成日志采集模板。
在本实施例的一些可选的实现方式中,上述目标日志信息包括至少一条日志信息,以及,上述实际运行状态信息确定单元504可以包括:子运行状态信息查询子单元(图中未示出)和信息组合子单元(图中未示出)。其中,子运行状态信息查询子单元,对于上述目标日志信息内的至少一条日志信息中的日志信息,被配置成查询该日志信息对应的子运行状态信息;信息组合子单元,被配置成将上述至少一条日志信息对应的至少一条子运行状态信息组合起来构成上述目标设备的实际运行状态信息。
进一步参考图6,作为对上述各图所示方法的实现,本公开提供了一种用于调试设备的装置的一个实施例,该装置实施例与图4所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图6所示,本实施例的用于调试设备的装置600可以包括:模板接收单元601、第一控制单元602、目标日志信息发送单元603和第二控制单元604。其中,模板接收单元601被配置成接收云端发来的运行配置模板和日志采集模板,上述运行配置模板用于上述目标设备运行在目标运行状态时指定的至少一项运行配置信息,上述日志采集模板用于指示边缘计算设备采集上述目标设备根据上述运行配置信息运行时的至少一项目标日志信息;第一控制单元602被配置成根据上述运行配置模板内的运行配置信息生成第一控制指令,并将上述第一控制指令发送给上述目标设备;目标日志信息发送单元603响应于检测到对应上述第一控制指令的、上述目标设备的目标日志信息,被配置成将上述目标日志信息发送至上述云端;第二控制单元604被配置成接收上述云端发来的更新运行配置模板,根据上述更新运行配置模板内的运行配置信息生成第二控制指令,并将上述第二控制指令发送给上述目标设备。
在本实施例的一些可选的实现方式中,上述第一控制单元602可以包括:运行配置信息解析子单元(图中未示出)和第一控制子指令生成子单元(图中未示出)。其中,运行配置信息解析子单元被配置成从上述运行配置模板中解析出至少一项运行配置信息;第一控制子指令生成子单元,对于上述至少一项运行配置信息中的运行配置信息,被配置成生成对应该运行配置信息的第一控制子指令。
在本实施例的一些可选的实现方式中,用于调试设备的装置600还可以包括:设备日志信息监测单元(图中未示出)和目标日志信息筛选单元(图中未示出)。其中,设备日志信息监测单元,响应于将上述第一控制指令发送至上述目标设备,被配置成监测上述目标设备的设备日志信息;目标日志信息筛选单元,响应于检测到上述设备日志信息,被配置成将上述设备日志信息中的、对应运行配置信息的至少一条日志信息标记为对应上述第一控制指令的目标日志信息。
本实施例还提供了一种电子设备,包括:一个或多个处理器;存储器,其上存储有一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器执行上述的用于调试设备的方法。
本实施例还提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现上述的用于调试设备的方法。
下面参考图7,其示出了适于用来实现本公开的实施例的电子设备(例如,图1中的云端服务器106)的计算机系统700的结构示意图。图7示出的电子设备仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700可以包括处理装置(例如中央处理器、图形处理器等)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储装置708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有电子设备700操作所需的各种程序和数据。处理装置701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
通常,以下装置可以连接至I/O接口705:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置706;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置707;包括例如磁带、硬盘等的存储装置708;以及通信装置709。通信装置709可以允许电子设备700与其他设备进行无线或有线通信以交换数据。虽然图7示出了具有各种装置的电子设备700,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图7中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在 计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置709从网络上被下载和安装,或者从存储装置708被安装,或者从ROM 702被安装。在该计算机程序被处理装置701执行时,执行本公开的实施例的方法中限定的上述功能。
需要说明的是,本公开的实施例上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取目标设备的目标运行状态信息,上述目标运行状态信息用于表征上述目标设备正常运行时的目标运行状态;根据上述目标运行状态信息构建运行配置模板和日志采集模板,上述运行配置模板用于上述目标设备运行在目标运行状态时的指定至少一项运行配置信息,上述日志采集模板用于指示边缘计算设备采集上述目标设备根据上述运行配置信息运行时的至少一项目标日志信息,上述边缘计算设备与上述目标设备电连接;将上述运行配置模板和日志采集模板发送给边缘计算设备,并接收上 述边缘计算设备发来的目标日志信息;通过上述目标日志信息确定上述目标设备的实际运行状态信息;响应于上述实际运行状态信息与目标运行状态信息不同,确定上述实际运行状态信息与目标运行状态信息之间的状态差值信息;通过上述状态差值信息对上述运行配置模板进行修改,得到更新运行配置模板,将上述更新运行配置模板发送给边缘计算设备,以使得上述边缘计算设备对上述目标设备进行调试。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的实施例的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开的各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开的实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括目标运行状态信息获取单元、模板构建单元、信息交互单元、实际运行状态信息确定单元、状态差值信息确定单元和调试单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,调试单元还可以被 描述为“用于对目标设备进行调试的单元”。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (18)
- 一种用于调试设备的方法,包括:获取目标设备的目标运行状态信息,所述目标运行状态信息用于表征所述目标设备正常运行时的目标运行状态;根据所述目标运行状态信息构建运行配置模板和日志采集模板,所述运行配置模板用于所述目标设备运行在目标运行状态时的指定至少一项运行配置信息,所述日志采集模板用于指示边缘计算设备采集所述目标设备根据所述运行配置信息运行时的至少一项目标日志信息,所述边缘计算设备与所述目标设备电连接;将所述运行配置模板和日志采集模板发送给边缘计算设备,并接收所述边缘计算设备发来的目标日志信息;通过所述目标日志信息确定所述目标设备的实际运行状态信息;响应于所述实际运行状态信息与目标运行状态信息不同,确定所述实际运行状态信息与目标运行状态信息之间的状态差值信息;以及通过所述状态差值信息对所述运行配置模板进行修改,得到更新运行配置模板,将所述更新运行配置模板发送给边缘计算设备,以使得所述边缘计算设备对所述目标设备进行调试。
- 根据权利要求1所述的方法,其中,所述获取目标设备的目标运行状态信息,包括:获取所述目标设备的峰值信息,所述峰值信息包括以下至少一项:处理器频率峰值、内存使用量峰值、网络带宽峰值、无故障时间峰值;以及按照设定条件确定对应所述峰值信息的目标运行状态信息,所述设定条件包括以下至少一项:设定阈值、目标任务,所述设定阈值用于表征峰值信息与目标运行状态信息之间的比例关系,所述目标运行状态信息包括至少一条子目标运行状态信息。
- 根据权利要求1所述的方法,其中,所述根据所述目标运行状态信息构建运行配置模板和日志采集模板,包括:获取所述目标设备的设备信息,所述设备信息包括以下至少一项:硬件信息和软件信息;将所述设备信息与所述目标运行状态信息进行匹配,确定所述目标设备的至少一项运行配置信息;以及将所述至少一项运行配置信息封装成运行配置模板。
- 根据权利要求3所述的方法,其中,所述根据所述目标运行状态信息构建运行配置模板和日志采集模板,包括:对于所述至少一项运行配置信息中的运行配置信息,确定对应该运行配置信息的日志信息;以及将对应所述至少一项运行配置信息的至少一项日志信息封装成日志采集模板。
- 根据权利要求1所述的方法,其中,所述目标日志信息包括至少一条日志信息,以及所述通过所述目标日志信息确定所述目标设备的实际运行状态信息,包括:对于所述目标日志信息内的至少一条日志信息中的日志信息,查询该日志信息对应的子运行状态信息;以及将所述至少一条日志信息对应的至少一条子运行状态信息组合起来构成所述目标设备的实际运行状态信息。
- 一种用于调试设备的方法,包括:接收云端发来的运行配置模板和日志采集模板,所述运行配置模板用于所述目标设备运行在目标运行状态时指定的至少一项运行配置信息,所述日志采集模板用于指示边缘计算设备采集所述目标设备根据所述运行配置信息运行时的至少一项目标日志信息;根据所述运行配置模板内的运行配置信息生成第一控制指令,并将所述第一控制指令发送给所述目标设备;响应于检测到对应所述第一控制指令的、所述目标设备的目标日志信息,将所述目标日志信息发送至所述云端;以及接收所述云端发来的更新运行配置模板,根据所述更新运行配置模板内的运行配置信息生成第二控制指令,并将所述第二控制指令发送给所述目标设备。
- 根据权利要求6所述的方法,其中,所述根据所述运行配置模板内的运行配置信息生成第一控制指令,包括:从所述运行配置模板中解析出至少一项运行配置信息;以及对于所述至少一项运行配置信息中的运行配置信息,生成对应该运行配置信息的第一控制子指令。
- 根据权利要求6所述的方法,其中,所述方法还包括:响应于将所述第一控制指令发送至所述目标设备,监测所述目标设备的设备日志信息;以及响应于检测到所述设备日志信息,将所述设备日志信息中的、对应运行配置信息的至少一条日志信息标记为对应所述第一控制指令的目标日志信息。
- 一种用于调试设备的装置,包括:目标运行状态信息获取单元,被配置成获取目标设备的目标运行状态信息,所述目标运行状态信息用于表征所述目标设备正常运行时的目标运行状态;模板构建单元,被配置成根据所述目标运行状态信息构建运行配置模板和日志采集模板,所述运行配置模板用于所述目标设备运行在目标运行状态时的指定至少一项运行配置信息,所述日志采集模板用于指示边缘计算设备采集所述目标设备根据所述运行配置信息运行时的至少一项目标日志信息,所述边缘计算设备与所述目标设备电连接;信息交互单元,被配置成将所述运行配置模板和日志采集模板发送给边缘计算设备,并接收所述边缘计算设备发来的目标日志信息;实际运行状态信息确定单元,被配置成通过所述目标日志信息确定所述目标设备的实际运行状态信息;状态差值信息确定单元,响应于所述实际运行状态信息与目标运行状态信息不同,被配置成确定所述实际运行状态信息与目标运行状态信息之间的状态差值信息;以及调试单元,被配置成通过所述状态差值信息对所述运行配置模板进行修改,得到更新运行配置模板,将所述更新运行配置模板发送给边缘计算设备,以使得所述边缘计算设备对所述目标设备进行调试。
- 根据权利要求9所述的装置,其中,所述目标运行状态信息获取单元包括:峰值信息获取子单元,被配置成获取所述目标设备的峰值信息,所述峰值信息包括以下至少一项:处理器频率峰值、内存使用量峰值、网络带宽峰值、无故障时间峰值;以及目标运行状态信息确定子单元,被配置成按照设定条件确定对应所述峰值信息的目标运行状态信息,所述设定条件包括以下至少一项:设定阈值、目标任务,所述设定阈值用于表征峰值信息与目标运行状态信息之间的比例关系,所述目标运行状态信息包括至少一条子目标运行状态信息。
- 根据权利要求9所述的装置,其中,所述模板构建单元包括:设备信息获取子单元,被配置成获取所述目标设备的设备信息,所述设备信息包括以下至少一项:硬件信息和软件信息;运行配置信息匹配子单元,被配置成将所述设备信息与所述目标运行状态信息进行匹配,确定所述目标设备的至少一项运行配置信息;以及运行配置模板封装子单元,被配置成将所述至少一项运行配置信息封装成运行配置模板。
- 根据权利要求11所述的装置,其中,所述模板构建单元包括:日志信息确定子单元,对于所述至少一项运行配置信息中的运行配置信息,被配置成确定对应该运行配置信息的日志信息;以及日志采集模板封装子单元,被配置成将对应所述至少一项运行配置信息的至少一项日志信息封装成日志采集模板。
- 根据权利要求9所述的装置,其中,所述目标日志信息包括至少一条日志信息,以及所述实际运行状态信息确定单元包括:子运行状态信息查询子单元,对于所述目标日志信息内的至少一条日志信息中的日志信息,被配置成查询该日志信息对应的子运行状态信息;以及信息组合子单元,被配置成将所述至少一条日志信息对应的至少一条子运行状态信息组合起来构成所述目标设备的实际运行状态信息。
- 一种用于调试设备的装置,包括:模板接收单元,被配置成接收云端发来的运行配置模板和日志采集模板,所述运行配置模板用于所述目标设备运行在目标运行状态时指定的至少一项运行配置信息,所述日志采集模板用于指示边缘计算设备采集所述目标设备根据所述运行配置信息运行时的至少一项目标日志信息;第一控制单元,被配置成根据所述运行配置模板内的运行配置信息生成第一控制指令,并将所述第一控制指令发送给所述目标设备;目标日志信息发送单元,响应于检测到对应所述第一控制指令的、所述目标设备的目标日志信息,被配置成将所述目标日志信息发送至所述云端;以及第二控制单元,被配置成接收所述云端发来的更新运行配置模板,根据所述更新运行配置模板内的运行配置信息生成第二控制指令,并将所述第二控制指令发送给所述目标设备。
- 根据权利要求14所述的装置,其中,所述第一控制单元包括:运行配置信息解析子单元,被配置成从所述运行配置模板中解析出至少一项运行配置信息;以及第一控制子指令生成子单元,对于所述至少一项运行配置信息中的运行配置信息,被配置成生成对应该运行配置信息的第一控制子指令。
- 根据权利要求14所述的装置,其中,所述装置还包括:设备日志信息监测单元,响应于将所述第一控制指令发送至所述目标设备,被配置成监测所述目标设备的设备日志信息;以及目标日志信息筛选单元,响应于检测到所述设备日志信息,被配置成将所述设备日志信息中的、对应运行配置信息的至少一条日志信息标记为对应所述第一 控制指令的目标日志信息。
- 一种电子设备,包括:一个或多个处理器;存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行权利要求1至5中任一所述的方法或权利要求6至8中任一所述的方法。
- 一种计算机可读介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至5中任一所述的方法或权利要求6至8中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/484,938 US11740997B2 (en) | 2019-12-20 | 2021-09-24 | Method and apparatus for debugging a device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911326334.7 | 2019-12-20 | ||
CN201911326334.7A CN111092767B (zh) | 2019-12-20 | 2019-12-20 | 用于调试设备的方法及装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/484,938 Continuation US11740997B2 (en) | 2019-12-20 | 2021-09-24 | Method and apparatus for debugging a device |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021120544A1 true WO2021120544A1 (zh) | 2021-06-24 |
Family
ID=70396333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2020/095191 WO2021120544A1 (zh) | 2019-12-20 | 2020-06-09 | 用于调试设备的方法及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11740997B2 (zh) |
CN (1) | CN111092767B (zh) |
WO (1) | WO2021120544A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111092767B (zh) * | 2019-12-20 | 2022-10-18 | 北京百度网讯科技有限公司 | 用于调试设备的方法及装置 |
CN112235417B (zh) * | 2020-11-09 | 2022-06-10 | 北京百度网讯科技有限公司 | 调试指令的发送方法、装置 |
US20230297492A1 (en) * | 2022-03-19 | 2023-09-21 | Wipro Limited | Method and system for determining optimal event log set for evaluating behaviour of software-based systems |
US20240256243A1 (en) * | 2023-01-31 | 2024-08-01 | Hitachi, Ltd. | Information processing system and information processing method |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202050426U (zh) * | 2011-04-21 | 2011-11-23 | 深圳市及时网络技术有限公司 | 网络管理系统 |
US20150163199A1 (en) * | 2012-04-30 | 2015-06-11 | Zscaler, Inc. | Systems and methods for integrating cloud services with information management systems |
CN109634802A (zh) * | 2018-11-12 | 2019-04-16 | 平安科技(深圳)有限公司 | 进程监控方法及终端设备 |
CN109684155A (zh) * | 2018-08-27 | 2019-04-26 | 平安科技(深圳)有限公司 | 监控配置方法、装置、设备及可读存储介质 |
CN111092767A (zh) * | 2019-12-20 | 2020-05-01 | 北京百度网讯科技有限公司 | 用于调试设备的方法及装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2001255808A1 (en) * | 2000-03-15 | 2001-09-24 | Arc Cores, Inc. | Method and apparatus for debugging programs in a distributed environment |
JP4676289B2 (ja) * | 2005-09-14 | 2011-04-27 | パナソニック株式会社 | デバッグシステム及び方法 |
CN101295279B (zh) * | 2007-04-29 | 2012-05-09 | 国际商业机器公司 | 多线程环境下的调试程序的方法和系统 |
CN103338132B (zh) * | 2013-06-21 | 2016-12-28 | 安科智慧城市技术(中国)有限公司 | 一种设备接入管理平台的验证方法及系统 |
US20160065653A1 (en) * | 2014-08-26 | 2016-03-03 | Fujitsu Limited | Internet of things (iot) device configuration construction |
CN106484540B (zh) * | 2016-10-20 | 2019-11-19 | 腾讯科技(深圳)有限公司 | 一种资源配置方法及装置 |
CN106950543B (zh) * | 2017-02-28 | 2020-06-09 | 四川九洲电器集团有限责任公司 | 一种参数配置方法及设备 |
US10833935B2 (en) * | 2018-06-05 | 2020-11-10 | International Business Machines Corporation | Synchronizing network configuration in a multi-tenant network |
CN109710490A (zh) * | 2018-12-20 | 2019-05-03 | 网易(杭州)网络有限公司 | 客户端日志的采集方法、装置、存储介质和电子设备 |
CN110493341A (zh) * | 2019-08-21 | 2019-11-22 | 北京百度网讯科技有限公司 | 用于控制设备的方法及装置 |
-
2019
- 2019-12-20 CN CN201911326334.7A patent/CN111092767B/zh active Active
-
2020
- 2020-06-09 WO PCT/CN2020/095191 patent/WO2021120544A1/zh active Application Filing
-
2021
- 2021-09-24 US US17/484,938 patent/US11740997B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202050426U (zh) * | 2011-04-21 | 2011-11-23 | 深圳市及时网络技术有限公司 | 网络管理系统 |
US20150163199A1 (en) * | 2012-04-30 | 2015-06-11 | Zscaler, Inc. | Systems and methods for integrating cloud services with information management systems |
CN109684155A (zh) * | 2018-08-27 | 2019-04-26 | 平安科技(深圳)有限公司 | 监控配置方法、装置、设备及可读存储介质 |
CN109634802A (zh) * | 2018-11-12 | 2019-04-16 | 平安科技(深圳)有限公司 | 进程监控方法及终端设备 |
CN111092767A (zh) * | 2019-12-20 | 2020-05-01 | 北京百度网讯科技有限公司 | 用于调试设备的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20220012165A1 (en) | 2022-01-13 |
CN111092767B (zh) | 2022-10-18 |
CN111092767A (zh) | 2020-05-01 |
US11740997B2 (en) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021120544A1 (zh) | 用于调试设备的方法及装置 | |
CN111083225B (zh) | 在物联网平台中的数据处理方法、装置及物联网平台 | |
Lekić et al. | IoT sensor integration to Node-RED platform | |
CN107294808B (zh) | 接口测试的方法、装置和系统 | |
EP3886367B1 (en) | Automating 5g slices using real-time analytics | |
JP2020030811A (ja) | 応答時間を確定するための方法及び装置 | |
WO2017114152A1 (zh) | 一种业务拨测方法、装置以及系统 | |
US11256590B1 (en) | Agent profiler to monitor activities and performance of software agents | |
US20150135165A1 (en) | Debugging a web application locally during development | |
RU2013121558A (ru) | Способ и устройство получения информации обратной связи от устройства | |
US10461990B2 (en) | Diagnostic traffic generation for automatic testing and troubleshooting | |
CN111966465B (zh) | 一种实时修改宿主机配置参数的方法、系统、设备及介质 | |
US20170102989A1 (en) | Method and system for dynamically unblocking customers in critical workflows by pushing community contributed solutions just-in-time when an error is encountered | |
CN110209559B (zh) | 一种非侵入式监测方法、控制设备及存储介质 | |
US20230214229A1 (en) | Multi-tenant java agent instrumentation system | |
CN111367812A (zh) | 测试方法、电子设备及可读存储介质 | |
CN109614340A (zh) | 应用程序的开发调试方法、装置、电子设备及存储介质 | |
JP2021141565A (ja) | 仮想ゲートウェイクラスタのグローバル障害に対する監視方法及び装置 | |
US8893091B2 (en) | Running an executable during a debug session | |
WO2017016386A1 (zh) | 一种实现射频拉远单元故障分析的方法和装置 | |
WO2024001594A1 (zh) | 算子开发、处理方法、装置、电子设备、系统及存储介质 | |
CN109634856B (zh) | 基于云服务的iOS智能终端远程真机调试系统及方法 | |
US10382311B2 (en) | Benchmarking servers based on production data | |
CN110995538A (zh) | 网络数据采集方法、装置、系统、设备及存储介质 | |
WO2015176516A1 (zh) | 一种业务流程的跟踪方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20903609 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20903609 Country of ref document: EP Kind code of ref document: A1 |