CN109992485A - 一种调试日志提供方法、终端设备及服务器 - Google Patents

一种调试日志提供方法、终端设备及服务器 Download PDF

Info

Publication number
CN109992485A
CN109992485A CN201910213799.5A CN201910213799A CN109992485A CN 109992485 A CN109992485 A CN 109992485A CN 201910213799 A CN201910213799 A CN 201910213799A CN 109992485 A CN109992485 A CN 109992485A
Authority
CN
China
Prior art keywords
debugging
server
api
information
destination service
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
CN201910213799.5A
Other languages
English (en)
Other versions
CN109992485B (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.)
Zhengzhou Apas Technology Co ltd
Original Assignee
Zhuhai Tianyan 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 Zhuhai Tianyan Technology Co Ltd filed Critical Zhuhai Tianyan Technology Co Ltd
Priority to CN201910213799.5A priority Critical patent/CN109992485B/zh
Publication of CN109992485A publication Critical patent/CN109992485A/zh
Application granted granted Critical
Publication of CN109992485B publication Critical patent/CN109992485B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display

Abstract

本申请提供一种调试日志提供方法及装置。方法包括:确定终端设备报错的目标服务的应用程序编程接口API;基于万维网浏览器的插件,通过所述API向服务器发送HTTP的请求消息;请求消息的消息头携带有服务器用于通过所述API对目标服务进行调试的调试指示信息;接收服务器下发的响应消息,并对响应消息进行解析,得到目标服务的调试日志。本申请在终端设备的目标服务出现报错后,基于浏览器插件,通过目标服务的API向服务器发送HTTP请求消息,以指示服务器通过该API对目标服务进行调试并反馈调试日志。整个过程不需要技术人员是手动登录服务器查找目标服务的API,不仅提高了调试日志的获取效率,还能防止登陆者因不正确的操作对服务器的环境产生破坏。

Description

一种调试日志提供方法、终端设备及服务器
技术领域
本申请实施例涉及计算机技术领域,尤其是指一种调试日志提供方法、终端设备及服务器。
背景技术
目前,终端设备上的一些服务是由服务器通过超文本传输协议(HTTP,Hyper TextTransfer Protocol)的应用程序编程接口(API,Application Programming Interface)提供的。在服务出现报错后,现有的处理方式是由技术人员登录服务器查询对应的API,以对服务进行调试。该方式主要存在以下缺点:
1)服务器需要为技术人员配置登录、查询和调试相关的权限,使得服务器的建设和维护成本较高。
2)服务器通常不会直接暴露在公网上,需要技术人员在可联通服务器的网络环境下进行登录(比如使用vpn登陆,或者是登陆客户端处于公司内),使得技术人员无法随时随地获取调试日志。
3)在技术人员登录服务器后,需要花费时间对问题服务的API进行定位。
4)如果有多台服务器同时提供API服务,则需要技术人员登录多台服务器对问题服务进行调试,调试操作不够便捷。
5)在技术人员登录服务器后,服务器无法对技术人员的操作进行约束,技术人员的误操作可能会导致服务器的环境以及程序代码遭到破坏,服务器的信息安全无法得到保障。
发明内容
本申请实施例目的是提供一种调试日志提供方法、终端设备及服务器,能够在不登录服务器的基础上,快捷获取API服务的调试日志。
为了实现上述目的,本申请实施例是这样实现的:
第一方面,提供一种应用于终端设备的调试日志提供方法,包括:
确定所述终端设备报错的目标服务对应的应用程序编程接口API;
基于万维网浏览器的插件,通过所述API向服务器发送超文本传输协议的请求消息;所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调试的调试指示信息;
接收所述服务器针对所述请求消息对应下发的响应消息;所述响应消息携带有所述目标服务的调试日志;
对所述响应消息进行解析,得到所述调试日志。
第二方面,提供了一种应用于服务器的调试日志提供方法,包括:
接收终端设备通过目标服务对应的API所发送的超文本传输协议的请求消息,所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调整的调试指示信息;判断所述服务器是否存在与所述API匹配的目标服务;
若存在,则基于所述调试指示信息,通过所述API对所述目标服务进行调试,得到所述目标服务的调试日志;以及,
向所述终端设备发送响应消息,所述响应消息携带有所述目标服务的调试日志。
第三方面,提供一种终端设备,包括:
确定模块,用于确定所述终端设备报错的目标服务对应的应用程序编程接口API;
请求信息发送模块,用于基于万维网浏览器的插件,通过所述API向服务器发送超文本传输协议的请求消息;所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调试的调试指示信息;
响应信息接收模块,用于接收所述服务器针对所述请求消息对应下发的响应消息;所述响应消息携带有所述目标服务的调试日志;
响应信息解析模块,用于对所述响应消息进行解析,得到所述调试日志。
第四方面,提供一种服务器,包括:
请求信息接收模块,用于接收终端设备通过目标服务对应的API所发送的超文本传输协议的请求消息,所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调整的调试指示信息;;
判断模块,用于判断所述服务器是否存在所述API匹配的目标服务;
调试模块,用于若判断存在与所述API匹配的目标服务,则基于所述调试指示信息,通过所述API对所述目标服务进行调试,得到所述目标服务的调试日志;以及,
响应消息发送模块,用于向所述终端设备发送响应消息,所述响应消息携带有所述目标服务的调试日志。
本申请实施例的方案在终端设备的目标服务出现报错后,基于浏览器插件,通过目标服务的API向服务器发送HTTP请求消息,以指示服务器通过该API对目标服务进行调试并反馈调试日志。整个过程不需要技术人员手动登录服务器查找目标服务的API,不仅大幅提高了调试日志的获取效率,还能防止登陆者因不正确的操作而对服务器的环境和程序代码产生破坏。此外,服务器也不需要配置登录相关的权限功能,可节省构建和维护的成本。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的调试日志提供方法在终端设备侧的流程示意图。
图2为本申请实施例提供的调试日志提供方法在服务器侧的流程示意图。
图3为本申请实施例提供的终端设备的结构示意图。
图4为本申请实施例提供的服务器的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
如前所述,终端设备上的一些服务是由服务器通过HTTP的API提供的。在服务出现报错后,现有的处理方式是由技术人员登录服务器查询对应的API,以对服务进行调试,并对调试日志进行分析以解决出现的问题。在该方式中,服务器需要为技术人员配置登录、查询和调试相关的权限,导致建设和维护成本较高。同事,对于技术人员来讲,需要在可联通服务器的网络环境下进行登录,且登陆后还要对问题服务的API进行定位,因此操作不够快捷,且无法随时随地对服务进行调试,从而影响了处理效率。此外,服务器无法对登录者的操作进行约束,若登录者操作存在失误,可能会导致服务器环境的程序代码遭到破坏。因此,为了解决上述问题,本申请旨在提供一种不需要登录服务器即可快捷获取服务调试日志的技术方案。
一方面,本申请实施例提供一种可应用于终端设备的调试日志提供方法,如图1所示,包括:
步骤S102,确定终端设备报错的目标服务对应的应用程序编程接口API。
其中,报错的目标服务终端设备可以监控得到的。在目标服务出现问题时,通常终端设备会接收到提示信息。比如,终端设备在查询新闻评论时,如果服务出现异常,则提示信息会显示为服务器繁忙,而这类提示信息一般相对友好,虽然并未直接指明具体问题的细节,但可以视为报错。
步骤S104,基于万维网浏览器的插件,通过API向服务器发送超文本传输协议的请求消息;请求消息的消息头携带有服务器用于通过API对目标服务进行调试的调试指示信息。
由于现有的HTTP请求消息并不具有指示服务器对API进行调试的功能,因此本步骤需要在消息头内封装服务器对API进行调试的调试指示信息。服务器在接收到HTTP请求消息后,可以基于HTTP请求消息的消息头来执行调试。
步骤S106,接收服务器针对请求消息对应下发的响应消息;响应消息携带有目标服务的调试日志。
其中,不同于上述请求消息,响应消息并不限定是基于HTTP协议发送的。比如,服务器可以通过邮件向终端设备发送调试日志,也可以将调试日志的文件上传至网盘,供终端设备进行下载。
步骤S108,对响应消息进行解析,得到所述目标服务的调试日志。
其中,本申请实施例不对调试日志的使用作具体限定。作为示例性介绍,可以将调试日志输入至万维网浏览器的控制台,由控制台呈现调试日志,以供技术人员进行分析。
通过图1所示的调试日志提供方法可以看出,本申请实施例的方案在终端设备的目标服务出现报错后,基于浏览器插件,通过目标服务的API向服务器发送HTTP请求消息,以指示服务器通过该API对目标服务进行调试并反馈调试日志。整个过程不需要技术人员手动登录服务器查找目标服务的API,不仅大幅提高了调试日志的获取效率,还能防止登陆者因不正确的操作而对服务器的环境和程序代码产生破坏。此外,服务器也不需要配置登录相关的权限功能,可节省构建和维护的成本。
下面对本申请实施例的调试日志提供方法进行详细介绍。
本申请实施例的调试日志提供方法用于在终端设备出现API报错后,通过HTTP的请求消息,来指示服务器对问题API进行调试,并向终端设备反馈调试日志。整个过程可以由程序执行,对于负责调试的技术人员来将,不需要自己登录服务器手动进行API排查并调试。
在具体实现时,本申请实施例的方法在HTTP请求消息的消息头header封装服务器用于对问题API进行调试的调试指示信息。
调试指示信息可以但不限于包括有:调试开关信息、调试校验信息和调试粒度信息。其中,
调试开关信息用于告知HTTP请求消息激活了指示服务器对API进行调试并反馈调试日志的功能。如果,HTTP请求消息的调试开关信息指示为关闭状态,则服务器默认HTTP请求消息仅具备传统功能,在具体实现时,可以在解析消息头的过程中,忽略掉上述调试校验信息和调试粒度信息对应的内容。如果,HTTP请求消息的调试开关信息指示为开启状态,则服务器基于上述调试校验信息和调试粒度信息,执行对问题API进行调试并反馈调试日志的相关流程。
调试校验信息可以是服务器对终端设备进行验证的信息,如用户身份信息或终端设备信息等。服务器基于预先约定的校验方法对调试校验信息进行校验,并在校验通过后,再对API进行调试。比如,服务器在对调试校验信息进行校验后,确定终端设备的持有用户不是授权调试的技术人员,则可以拒绝本次HTTP请求消息的指示。
调试粒度信息用于指示服务器对API进行调试的项目。应理解,不同调试粒度对应的调试项目不同。对于同一API来讲,调试粒度越小,则调试项目越丰富,调试粒度越大,则调试项目越精简。在实际应用中,调试粒度可以根据API服务的报错内容确定的。比如,API服务的报错内容指示出需要对较多的项目进行调试后才能定位API的问题,则调试粒度信息指示的调试粒度相对较小。
应理解,服务器在调试开关信息指示调试开关为开启状态时,对调试校验信息进行校验,并在校验通过后,按照调试粒度信息指示的调试粒度对所述API进行调试。
由于HTTP请求消息是一种较为快捷的交互方式,基于HTTP请求消息可以随时随地来指示服务器生成并反馈问题API的调试日志,从而保证技术人员可以对问题API进行及时处理。
此外,对于服务器来讲,反馈调试日志方式可以是多种多样的。作为一种一种可行的方案,服务器可以按照终端设备侧的约定方式,来反馈调试日志。即,本申请实施例的方案中,HTTP请求消息还可以携带有用于对API的调试日志进行反馈的反馈指示信息,服务器按照反馈指示信息,向终端设备发送携带调试日志的响应消息。
比如,反馈指示信息可以包括反馈方式信息,反馈方式信息可以指示服务器以邮件方式进行反馈,并指示反馈的邮箱地址。服务器在对API进行调试后,将调试日志以邮件方式发送至指定的邮箱地址。
应理解,调试指示信息可以根据实际情况进行灵活扩展。比如,还可以携带有指定服务器的地址信息。对应地,在网络中间设备接收到终端设备发送的HTTP请求消息后,可以根据该地址信息将HTTP请求消息转发给指定服务器,由指定服务器负责对问题API进行调试并反馈调试日志。
在终端设备获取到调试日志后,即可基于万维网浏览器的插件,将调试日志输入至万维网浏览器的控制台,使终端设备的持有这通过控制台调取调试日志以进行问题分析。
以上是对本申请实施例的调试日志提供方法介绍。与之对应地,本申请实施例还提供一种应用于服务器的调试日志提供方法,如图2所示,包括:
步骤S202,接收终端设备通过目标服务对应的API所发送的超文本传输协议的请求消息;请求消息的消息头携带有服务器用于通过所述API对目标服务进行调整的调试指示信息。
其中,请求消息可以是终端设备按照上述步骤S104所示的方法发送的。
步骤S204,判断服务器是否存在与所述API匹配的目标服务。
在一些场景中,终端设备不确定异常API服务具体来源于哪个服务器,因此会采用广播方式或者轮询方式向不少一个服务器发送上述HTTP请求消息。服务器在接收到HTTP请求消息后,首先判断本地是否存在上述API的服务,如果不存在,则可以选择忽视。
步骤S206,若存在,则基于调试指示信息,通过所述API对目标服务进行调试,得到目标服务的调试日志。以及,
步骤S208,向终端设备发送响应消息,响应消息携带有所述目标服务的调试日志。
通过图2所示的调试日志提供方法可以看出,本申请实施例的方案在终端设备的目标服务出现报错后,,基于浏览器插件,通过目标服务的API向服务器发送HTTP请求消息,以指示服务器通过该API对目标服务进行调试并反馈调试日志。整个过程不需要技术人员登录服务器对目标服务的API进行手动查找,不仅大幅提高了调试日志的获取效率,还能防止登陆者因不正确的操作而对服务器的环境和程序代码产生破坏。此外,服务器也不需要配置登录相关的权限功能,可节省构建和维护的成本。
其中如前所述,调试指示信息可以包括调试开关信息、调试校验信息和调试粒度信息。
服务器在执行步骤S206时,具体在调试开关信息中指示的调试开关为开启状态时,按照约定的校验方法对调试校验信息进行校验,并在校验通过后,按照所述调试粒度信息中指示的调试粒度,通过所述API对目标服务进行调试。
此外,所述请求消息的消息头还携带有所述调试日志的反馈方式指示信息。服务器在执行步骤S208时,可以按照反馈方式指示信息中指示的反馈方式发送响应消息。比如,反馈方式指示信息指示的反馈方式为邮件反馈,则服务器向终端设备发送携带有目标服务的调试日志的邮件。
为便于进一步理解调试日志提供方法的技术方案,下面结合终端设备和服务器,对调试日志提供方法进行详细介绍。
本申请实施例提供的调试日志提供方主要包括以下步骤:
步骤1:终端设备调取后台监控程序,对终端设备上的各个API进行监控。
步骤2:在监控出终端设备上的某个API出问题时,调用浏览器插件,生成HTPP请求消息,并在HTPP请求消息的Header(消息头)设置服务器对问题API进行调试的调试指示信息。
如前所述,Header可以携带调试开关、调试粒度、调试校验信息、反馈方式。其中,
调试开关的key为x-debug,x-debug的值为0代表调试开关为关闭状态(关闭状态为默认状态),x-debug的值为1代表调试开关为开启状态。
调试粒度的key为x-debug-level,表示API对应的不同问题事件的严重级别,服务器针对不同问题事件的严重级别,使用预先约定的调试项对问题API进行调试。作为示例性介绍,x-debug-level的值可以如下表所示:
校验信息的为key为x-auth,x-auth的值为约定的信息,可以用户身份信息、终端设备信息等。
响应方式的key为x-response,x-response的值为Header则表示服务器同样以HTTP方式发送响应消息,并通过响应消息header携带调试日志。x-response的值为File则表示服务器通过文件形式反馈调试日志、x-response的值为Mail_to邮箱地址则表示服务器通过邮件形式发送到Mail_to所指示的邮箱地址。在实际应用中,可以根据调试日志的文件大小来灵活设置反馈方式。比如,默认x-response的值为Header,若预测反馈的调试日志文件大小超出了HTTP消息头的携带能力,则可以将x-response的值设置为Mail_to邮箱地址。
步骤3:终端设备向网络发送HTTP请求消息。
步骤4:中间网络设备在接收到HTTP请求消息后,确定HTTP请求消息后的header是否指定了对应的服务器。如果header指定了对应的服务器,则中间网络设备将HTTP请求消息直接转发到指定服务器上。如果header没有指定服务器,则采随机或轮询等算法将HTTP请求消息转发至部署有问题API的一个或多个服务器上。
步骤5:服务器在接收到HTTP请求消息后,通过HTTP的软件开发工具包或其他相同功能的实现逻辑,按照上述header的信息约定进行解析处理,如解析header信息中的x-debug、x-debug-level、x-auth、x-response。
在解析过程中,首先对x-debug进行验证,若x-debug开启,则进一步校验x-auth,并在x-auth校验通过后,根据x-debug-level指示的问题时间级别对应的调试粒度对问题API进行调试,得到问题API的调试日志。最后,按照x-response指示的反馈方式反馈调试日志。在具体过程汇中,如果考虑调试信息的传输成本以及安全性,可以对调试日志进行安全编码和数据压缩后在进行发送。
下面结合不同的应用场景,对本申请实施例的调试日志提供方法进行说明。
应用场景一
终端设备在运动目标API的服务时,弹出该服务的异常报告。
终端设备基于异常报告评估目标API的问题事件级别,以及调试日志的文件大小。假设本应用场景一中,问题事件级为FATAL,表示API服务终止执行,需要对问题API进行调试的调试项较多,调试日志的文件大小超出了HTTP消息头的携带能力,因此选择以邮件方式反馈调回日志。
对应地,终端设备调用浏览器插件生成HTTP请求消息,并在HTTP请求消息的header中,将调试开关x-debug的值设置为至1,将x-debug-level的值设置为FATAL,将x-auth的值设置为终端设备的国际移动设备识别码(IMEI,International MobileEquipment Identity),将x-response的值为Mail_toxxxx@xxx.com(xxxx@xxx.com为指定的邮箱地址)。
服务器在接收到HTTP请求消息后,从HTTP请求消息的header中确定x-debug的值设置为1,调试开关为开启状态。之后,对x-auth的值表示的IMEI进行身份验证。在确定IMEI属于授权的终端设备后,按照x-debug-level的值指示的FATAL级别对应的调试粒度,对问题API进行调试,生成调试日志。最后,服务器将人类可读的调试日志发送至x-response值指示的邮箱地址xxxx@xxx.com。
终端设备的用户通过终端设备从邮箱中获取调试日志并进行展示。
应用场景二
终端设备在运动目标API的服务时,弹出该服务的异常报告。
终端设备基于异常报告评估目标API的问题事件级别,以及调试日志的文件大小。假设本应用场景二中,问题事件级为ERROR,表示API服务还能够继续运行,需要对问题API进行调试的调试项较少,调试日志的文件大小未超出了HTTP消息头的携带能力,因此选择传输更便捷的HTTP消息负责反馈调回日志。
对应地,终端设备调用浏览器插件生成HTTP请求消息,并在HTTP请求消息的header中,将调试开关x-debug的值设置为至1,将x-debug-level的值设置为ERROR,将x-auth的值设置为终端设备的用户身份ID,将x-response的值为header。
服务器在接收到HTTP请求消息后,从HTTP请求消息的header中确定x-debug的值设置为1,调试开关为开启状态。之后,对x-auth的值表示的用户身份ID进行验证。在确定用户身份ID为授权调试的技术人员后,按照x-debug-level的值指示的ERROR级别对应的调试粒度,对问题API进行调试,生成调试日志。最后,服务器向终端设备发送header携带有调试日志的HTTP响应消息。
终端设备基于浏览器插件按照约定的数据解密方法对HTTP响应消息的header进行解析,并逐行按照时间顺序将解析获得的调试日志输入至浏览器的控制台上。在上述基础之上,也可以将执行过程及各环节的执行状态,输入至浏览器的控制台与日志信息一并进行展示,从而在本次请求出现问题时,方便技术人员快速进行定位。
以上为本申请实施例提供的调试日志提供方法,基于同样的思路,本申请实施例还提供一种终端设备,如图3中所示,包括:
服务接口确定模块31,用于确定所述终端设备报错的目标服务对应的应用程序编程接口API;
其中,报错的目标服务终端设备可以监控得到的。在目标服务出现问题时,通常终端设备会接收到提示信息。比如,终端设备在查询新闻评论时,如果服务出现异常,则提示信息会显示为服务器繁忙,而这类提示信息一般相对友好,虽然并未直接指明具体问题的细节,但可以视为报错。
请求信息发送模块32,用于基于万维网浏览器的插件,通过所述API向服务器发送超文本传输协议的请求消息;所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调试的调试指示信息;
其中,由于现有的HTTP请求消息并不具有指示服务器对API进行调试的功能,因此需要请求信息发送模块32在消息头内封装服务器对API进行调试的调试指示信息。服务器在接收到HTTP请求消息后,可以基于HTTP请求消息的消息头来执行调试。
响应信息接收模块33,用于接收所述服务器针对所述请求消息对应下发的响应消息;所述响应消息携带有所述目标服务的调试日志;
其中,不同于上述请求消息,响应消息并不限定是基于HTTP协议发送的。比如,服务器可以通过邮件向终端设备发送调试日志,也可以将调试日志的文件上传至网盘,供终端设备进行下载。
响应信息解析模块34,用于对所述响应消息进行解析,得到所述调试日志。
其中,本申请实施例不对调试日志的使用作具体限定。作为示例性介绍,可以将调试日志输入至万维网浏览器的控制台,由控制台呈现调试日志,以供技术人员进行分析。
通过图3所示的终端设备可以看出,本申请实施例的方案在终端设备的目标服务出现报错后,基于浏览器插件,通过目标服务的API向服务器发送HTTP请求消息,以指示服务器通过该API对目标服务进行调试并反馈调试日志。整个过程不需要技术人员手动登录服务器查找目标服务的API,不仅大幅提高了调试日志的获取效率,还能防止登陆者因不正确的操作而对服务器的环境和程序代码产生破坏。此外,服务器也不需要配置登录相关的权限功能,可节省构建和维护的成本。
其中,所述服务器在所述调试开关信息中指示的调试开关为开启状态时,按照约定的校验方法对所述调试校验信息进行校验,并在校验通过后,按照所述调试粒度信息中指示的调试粒度,通过所述API对所述目标服务进行调试。
可选地,所述请求消息的消息头还携带有所述调试日志的反馈方式指示信息;其中,所述服务器按照所述反馈方式指示信息中指示的反馈方式发送所述响应消息。
显然,本申请实施例提供的终端设备是图1所示调试日志提供方法的执行主体,因此该终端设备能够实现调试日志提供方法在图1所示实施例的功能,本文不再赘述。
此外,基于同样的思路,本申请实施例还提供一种服务器,如图4中所示,包括:
请求信息接收模块41,用于接收终端设备通过目标服务对应的API所发送的超文本传输协议的请求消息,所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调整的调试指示信息;
判断模块42,用于判断所述服务器是否存在所述API匹配的目标服务;
调试模块43,用于若判断存在与所述API匹配的目标服务,则基于所述调试指示信息,通过所述API对所述目标服务进行调试,得到所述目标服务的调试日志;以及,
响应消息发送模块44,用于向所述终端设备发送响应消息,所述响应消息携带有所述目标服务的调试日志。
通过图4所示的服务器可以看出,本申请实施例的方案在终端设备的目标服务出现报错后,基于浏览器插件,通过目标服务的API向服务器发送HTTP请求消息,以指示服务器通过该API对目标服务进行调试并反馈调试日志。整个过程不需要技术人员手动登录服务器查找目标服务的API,不仅大幅提高了调试日志的获取效率,还能防止登陆者因不正确的操作而对服务器的环境和程序代码产生破坏。此外,服务器也不需要配置登录相关的权限功能,可节省构建和维护的成本。
其中,所述调试指示信息包括调试开关信息、调试校验信息和调试粒度信息;所述调试模块具体在所述调试开关信息中指示的调试开关为开启状态时,按照约定的校验方法对所述调试校验信息进行校验,并在校验通过后,按照所述调试粒度信息中指示的调试粒度,通过所述API对所述目标服务进行调试。
此外,所述请求消息还携带有所述调试日志的反馈方式指示信息;
响应消息发送模块44具体用于按照所述反馈方式指示信息中指示的反馈方式,向所述终端设备发送响应消息。
显然,本申请实施例提供的服务器是图2所示调试日志提供方法的执行主体,因此该终端设备能够实现调试日志提供方法在图2所示实施例的功能,本文不再赘述。
此外,本申请实施例还提供一种电子设备。在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatilememory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成问答对数据挖掘装置。
应理解,本申请实施例的电子设备还可执行图1所示的调试日志提供方法,并实现终端设备在图1所示实施例的功能。即,处理器执行存储器所存放的程序,并具体用于执行以下操作:
确定所述终端设备报错的目标服务对应的应用程序编程接口API;
基于万维网浏览器的插件,通过所述API向服务器发送超文本传输协议的请求消息;所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调试的调试指示信息;
接收所述服务器针对所述请求消息对应下发的响应消息;所述响应消息携带有所述目标服务的调试日志;
对所述响应消息进行解析,得到所述调试日志。
此外,本申请实施例的电子设备还可执行图2所示的调试日志提供方法,并实现服务器在图2所示实施例的功能。即,处理器执行存储器所存放的程序,并具体用于执行以下操作:
接收终端设备通过目标服务对应的API所发送的超文本传输协议的请求消息,所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调整的调试指示信息;判断所述服务器是否存在与所述API匹配的目标服务;
若存在,则基于所述调试指示信息,通过所述API对所述目标服务进行调试,得到所述目标服务的调试日志;以及,
向所述终端设备发送响应消息,所述响应消息携带有所述目标服务的调试日志。
本申请实施例的电子设备执行图1或图2所示实施例的功能时,能够在终端设备的目标服务出现报错后,基于浏览器插件,通过目标服务的API向服务器发送HTTP请求消息,以指示服务器通过该API对目标服务进行调试并反馈调试日志。整个过程不需要技术人员手动登录服务器查找目标服务的API,不仅大幅提高了调试日志的获取效率,还能防止登陆者因不正确的操作而对服务器的环境和程序代码产生破坏。此外,服务器也不需要配置登录相关的权限功能,可节省构建和维护的成本。本申请图1或图2所示实施例揭示的调试日志提供方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
此外,本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令。
其中,上述指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图1所示实施例的方法,并具体用于执行以下方法:
确定所述终端设备报错的目标服务对应的应用程序编程接口API;
基于万维网浏览器的插件,通过所述API向服务器发送超文本传输协议的请求消息;所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调试的调试指示信息;
接收所述服务器针对所述请求消息对应下发的响应消息;所述响应消息携带有所述目标服务的调试日志;
对所述响应消息进行解析,得到所述调试日志。
或者,上述指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图2所示实施例的方法,并具体用于执行以下方法:
接收终端设备通过目标服务对应的API所发送的超文本传输协议的请求消息,所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调整的调试指示信息;判断所述服务器是否存在与所述API匹配的目标服务;
若存在,则基于所述调试指示信息,通过所述API对所述目标服务进行调试,得到所述目标服务的调试日志;以及,
向所述终端设备发送响应消息,所述响应消息携带有所述目标服务的调试日志。
在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
需要说明的是,在本文中,术语"包括"、"包含"或者其任何其它变体意在涵盖非排它性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (12)

1.一种调试日志提供方法,应用于终端设备,其特征在于,包括:
确定所述终端设备报错的目标服务对应的应用程序编程接口API;
基于万维网浏览器的插件,通过所述API向服务器发送超文本传输协议的请求消息;所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调试的调试指示信息;
接收所述服务器针对所述请求消息对应下发的响应消息;所述响应消息携带有所述目标服务的调试日志;
对所述响应消息进行解析,得到所述调试日志。
2.如权利要求1所述的调试日志提供方法,其特征在于,
所述调试指示信息包括调试开关信息、调试校验信息和调试粒度信息;
其中,所述服务器在所述调试开关信息中指示的调试开关为开启状态时,按照约定的校验方法对所述调试校验信息进行校验,并在校验通过后,按照所述调试粒度信息中指示的调试粒度,通过所述API对所述目标服务进行调试。
3.如权利要求1或2所述的调试日志提供方法,其特征在于,
所述请求消息的消息头还携带有所述调试日志的反馈方式指示信息;
其中,所述服务器按照所述反馈方式指示信息中指示的反馈方式发送所述响应消息。
4.一种调试日志提供方法,应用于服务器,其特征在于,包括:
接收终端设备通过目标服务对应的API所发送的超文本传输协议的请求消息;所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调整的调试指示信息;判断所述服务器是否存在与所述API匹配的目标服务;
若存在,则基于所述调试指示信息,通过所述API对所述目标服务进行调试,得到所述目标服务的调试日志;以及,
向所述终端设备发送响应消息,所述响应消息携带有所述目标服务的调试日志。
5.根据权利要求4所述的调试日志提供方法,其特征在于,
所述调试指示信息包括调试开关信息、调试校验信息和调试粒度信息;
基于所述调试指示信息,通过所述API对所述目标服务进行调试,包括:
在所述调试开关信息中指示的调试开关为开启状态时,按照约定的校验方法对所述调试校验信息进行校验,并在校验通过后,按照所述调试粒度信息中指示的调试粒度,通过所述API对所述目标服务进行调试。
6.根据权利要求4或5所述的调试日志提供方法,其特征在于,
所述请求消息还携带有所述调试日志的反馈方式指示信息;
基于所述反馈指示信息,向所述终端设备发送响应消息,包括:
按照所述反馈方式指示信息中指示的反馈方式,向所述终端设备发送响应消息。
7.一种终端设备,其特征在于,包括:
服务接口确定模块,用于确定所述终端设备报错的目标服务对应的应用程序编程接口API;
请求信息发送模块,用于基于万维网浏览器的插件,通过所述API向服务器发送超文本传输协议的请求消息;所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调试的调试指示信息;
响应信息接收模块,用于接收所述服务器针对所述请求消息对应下发的响应消息;所述响应消息携带有所述目标服务的调试日志;
响应信息解析模块,用于对所述响应消息进行解析,得到所述调试日志。
8.根据权利要求7所述的终端设备,其特征在于,
所述调试指示信息包括调试开关信息、调试校验信息和调试粒度信息;
其中,所述服务器在所述调试开关信息中指示的调试开关为开启状态时,按照约定的校验方法对所述调试校验信息进行校验,并在校验通过后,按照所述调试粒度信息中指示的调试粒度,通过所述API对所述目标服务进行调试。
9.根据权利要求7或8所述的终端设备,其特征在于,
所述请求消息的消息头还携带有所述调试日志的反馈方式指示信息;
其中,所述服务器按照所述反馈方式指示信息中指示的反馈方式发送所述响应消息。
10.一种服务器,其特在于,包括:
请求信息接收模块,用于接收终端设备通过目标服务对应的API所发送的超文本传输协议的请求消息,所述请求消息的消息头携带有所述服务器用于通过所述API对所述目标服务进行调整的调试指示信息;
判断模块,用于判断所述服务器是否存在所述API匹配的目标服务;
调试模块,用于若判断存在与所述API匹配的目标服务,则基于所述调试指示信息,通过所述API对所述目标服务进行调试,得到所述目标服务的调试日志;以及,
响应消息发送模块,用于向所述终端设备发送响应消息,所述响应消息携带有所述目标服务的调试日志。
11.根据权利要求10所述的服务器,其特在于,
所述调试指示信息包括调试开关信息、调试校验信息和调试粒度信息;
所述调试模块具体在所述调试开关信息中指示的调试开关为开启状态时,按照约定的校验方法对所述调试校验信息进行校验,并在校验通过后,按照所述调试粒度信息中指示的调试粒度,通过所述API对所述目标服务进行调试。
12.根据权利要求10或11所述的服务器,其特在于,
所述请求消息还携带有所述调试日志的反馈方式指示信息;
响应消息发送模块具体用于,按照所述反馈方式指示信息中指示的反馈方式,向所述终端设备发送响应消息。
CN201910213799.5A 2019-03-20 2019-03-20 一种调试日志提供方法、终端设备及服务器 Active CN109992485B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910213799.5A CN109992485B (zh) 2019-03-20 2019-03-20 一种调试日志提供方法、终端设备及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910213799.5A CN109992485B (zh) 2019-03-20 2019-03-20 一种调试日志提供方法、终端设备及服务器

Publications (2)

Publication Number Publication Date
CN109992485A true CN109992485A (zh) 2019-07-09
CN109992485B CN109992485B (zh) 2023-02-03

Family

ID=67130715

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910213799.5A Active CN109992485B (zh) 2019-03-20 2019-03-20 一种调试日志提供方法、终端设备及服务器

Country Status (1)

Country Link
CN (1) CN109992485B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111309497A (zh) * 2020-02-10 2020-06-19 北京无限光场科技有限公司 信息调用的方法及装置、服务器、终端和存储介质
CN111459835A (zh) * 2020-04-15 2020-07-28 望海康信(北京)科技股份公司 业务调试方法、装置、电子设备及计算机可读存储介质
CN112351090A (zh) * 2020-10-29 2021-02-09 深圳Tcl新技术有限公司 基于智能大屏的日志信息传输方法、装置及存储介质
CN113360326A (zh) * 2020-03-06 2021-09-07 Oppo广东移动通信有限公司 调试日志获取方法及设备
WO2023168926A1 (zh) * 2022-03-09 2023-09-14 青岛海尔科技有限公司 软件异常的确定方法、装置、存储介质及电子装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102413436A (zh) * 2011-09-14 2012-04-11 华为技术有限公司 信息传送方法和系统、以及移动终端上的浏览器
CN103606074A (zh) * 2013-11-07 2014-02-26 北京奇虎科技有限公司 一种邮件内容的加载方法、装置和浏览器
CN103684899A (zh) * 2012-09-17 2014-03-26 腾讯科技(深圳)有限公司 远程调试方法和装置
US9270553B1 (en) * 2014-03-26 2016-02-23 Amazon Technologies, Inc. Dynamic service debugging in a virtual environment
CN107688529A (zh) * 2017-02-20 2018-02-13 平安科技(深圳)有限公司 组件调试方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102413436A (zh) * 2011-09-14 2012-04-11 华为技术有限公司 信息传送方法和系统、以及移动终端上的浏览器
CN103684899A (zh) * 2012-09-17 2014-03-26 腾讯科技(深圳)有限公司 远程调试方法和装置
CN103606074A (zh) * 2013-11-07 2014-02-26 北京奇虎科技有限公司 一种邮件内容的加载方法、装置和浏览器
US9270553B1 (en) * 2014-03-26 2016-02-23 Amazon Technologies, Inc. Dynamic service debugging in a virtual environment
CN107688529A (zh) * 2017-02-20 2018-02-13 平安科技(深圳)有限公司 组件调试方法和装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111309497A (zh) * 2020-02-10 2020-06-19 北京无限光场科技有限公司 信息调用的方法及装置、服务器、终端和存储介质
CN111309497B (zh) * 2020-02-10 2023-09-26 北京有竹居网络技术有限公司 信息调用的方法及装置、服务器、终端和存储介质
CN113360326A (zh) * 2020-03-06 2021-09-07 Oppo广东移动通信有限公司 调试日志获取方法及设备
CN113360326B (zh) * 2020-03-06 2023-02-28 Oppo广东移动通信有限公司 调试日志获取方法及设备
CN111459835A (zh) * 2020-04-15 2020-07-28 望海康信(北京)科技股份公司 业务调试方法、装置、电子设备及计算机可读存储介质
CN111459835B (zh) * 2020-04-15 2023-08-11 望海康信(北京)科技股份公司 业务调试方法、装置、电子设备及计算机可读存储介质
CN112351090A (zh) * 2020-10-29 2021-02-09 深圳Tcl新技术有限公司 基于智能大屏的日志信息传输方法、装置及存储介质
CN112351090B (zh) * 2020-10-29 2024-04-05 深圳Tcl新技术有限公司 基于智能大屏的日志信息传输方法、装置及存储介质
WO2023168926A1 (zh) * 2022-03-09 2023-09-14 青岛海尔科技有限公司 软件异常的确定方法、装置、存储介质及电子装置

Also Published As

Publication number Publication date
CN109992485B (zh) 2023-02-03

Similar Documents

Publication Publication Date Title
CN109992485A (zh) 一种调试日志提供方法、终端设备及服务器
CN108650149B (zh) 服务器的测试方法、装置、设备及计算机可读存储介质
CN106953740B (zh) 应用中页面访问数据的处理方法、客户端、服务器及系统
US7159237B2 (en) Method and system for dynamic network intrusion monitoring, detection and response
WO2018120722A1 (zh) 异步接口测试方法、终端、设备、系统及存储介质
WO2018018697A1 (zh) 伪基站垃圾短信鉴别方法及系统
CN109474603B (zh) 数据抓包处理方法及终端设备
GB2375199A (en) Method and apparatus for ascertaining the status of a data processing environment.
CN107861852A (zh) 网页错误处理方法、系统及可读存储介质
WO2001090914A1 (en) Messaging based proxy application management
CN106998323B (zh) 应用层网络攻击仿真方法、装置及系统
CN112615858B (zh) 物联网设备监控方法、装置与系统
CN111756697B (zh) Api安全检测方法、装置、存储介质及计算机设备
CN108347361A (zh) 应用程序测试方法、装置、计算机设备和存储介质
CN108965296A (zh) 一种用于智能家居设备的漏洞检测方法及检测装置
CN107018526A (zh) 基于安卓智能电视的远程终端Wi‑Fi故障诊断的方法及设备
CN112202635B (zh) 链路的监控方法、装置、存储介质以及电子装置
CN112866193A (zh) 设备部署方法、装置、设备及存储介质
CN103647652B (zh) 一种实现数据传输的方法、装置和服务器
CN107508746B (zh) 好友添加方法、装置及电子设备
CN110365714A (zh) 主机入侵检测方法、装置、设备及计算机存储介质
CN112116997B (zh) 远程诊断的方法、装置及系统、电子设备、计算机可读存储介质
CN109600395A (zh) 一种终端网络接入控制系统的装置及实现方法
CN109714448A (zh) Pon终端的上网信息统计方法及装置
CN108924159A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220729

Address after: No.16 and 17, unit 1, North District, Kailin center, No.51 Jinshui East Road, Zhengzhou area (Zhengdong), Henan pilot Free Trade Zone, Zhengzhou City, Henan Province, 450000

Applicant after: Zhengzhou Apas Technology Co.,Ltd.

Address before: E301-27, building 1, No.1, hagongda Road, Tangjiawan Town, Zhuhai City, Guangdong Province

Applicant before: ZHUHAI TIANYAN TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant