一种客户端业务错误场景立体监控方法及装置与流程

文档序号:20439755发布日期:2020-04-17 22:19阅读:115来源:国知局
一种客户端业务错误场景立体监控方法及装置与流程

本申请属于数据通信技术领域,特别涉及一种客户端业务错误场景立体监控的方法及装置。



背景技术:

大型电商的物流系统的生产环节涉及到仓配运等多个执行环节,而每个环节的使用人员众多,又分布到全国不同的地方,加上电商的业务变化非常之快,导致客户端的更新非常频繁,于是就存在如下问题:

1、前方操作人员受限于自身的技术能力不能确定具体的故障原因;

2、传统的上报方式只是包含当前的内容;

3、由于研发一般和业务操作人员距离很远,上报环节众多;

4、传统的上报方式单一;

5、上报环节众多和单一,导致信息在传递过程中失真或错误严重,影响问题的及时和正确处理。

鉴于以上原因,需要设计一种快捷、立体、准确的错误上报和处理方法。



技术实现要素:

为了解决上述技术问题至少之一,本申请提供了一种客户端业务错误场景立体监控方法及装置,通过溯源到故障发生前的多个操作场景,提高故障上报的描述准确度。

本申请的第一个方面,一种客户端业务错误场景立体监控方法,包括:获取用户当前业务页面的页面信息及操作信息;将所述页面信息及操作信息作为一个数据结构单元推入一设定长度的队列的队尾,所述队列中的每个元素对应于一个数据结构单元;继续获取用户打开的新的页面,并重复上述步骤,将新的数据结构单元推入所述队列的队尾,并将旧的数据结构单元向队列的队头移动,若所述队列已全部被填满,则自队头删除旧的数据结构单元;若页面出现错误,则将所述队列发送给监控服务端。

优选的是,将所述页面信息及操作信息推入队列之前包括:获取配置端输入的用于生成队列的长度信息;根据预置的队列中的每个元素的数据结构及队列的长度信息生成所述队列。

优选的是,将所述页面信息及操作信息推入队列包括:获取用户当前操作的业务页面,将所述业务页面的页面信息加入到所述队列的队尾的数据结构单元中;监控用户在当前业务页面上的操作,将所述操作信息写入对应的所述数据结构单元中。

优选的是,所述获取用户当前操作的业务页面包括:根据用户登录客户端业务系统的登录消息获取所述业务系统的一级业务页面;以及根据用户对所述业务页面内的控件的操作,获取对应的二级以上的业务页面。

优选的是,在将所述队列发送给监控服务端之前还包括:响应用户的报障请求,生成报障信息获取控件;通过所述报障信息获取控件收集用户的报障信息,并将所述保障信息与所述队列一起发送给监控服务端。

本申请第二方面,一种客户端业务错误场景立体监控装置,包括:信息获取模块,用于获取用户当前业务页面的页面信息及操作信息;信息存储模块,用于将所述页面信息及操作信息作为一个数据结构单元推入一设定长度的队列的队尾,所述队列中的每个元素对应于一个数据结构单元;信息选取模块,用于继续获取用户打开的新的页面,并重复上述步骤,将新的数据结构单元推入所述队列的队尾,并将旧的数据结构单元向队列的队头移动,若所述队列已全部被填满,则自队头删除旧的数据结构单元;信息发送模块,用于若页面出现错误,则将所述队列发送给监控服务端。

优选的是,还包括队列设置模块,所述队列设置模块包括:队列长度获取单元,用于获取配置端输入的用于生成队列的长度信息;队列生成单元,用于根据预置的队列中的每个元素的数据结构及队列的长度信息生成所述队列。

优选的是,所述信息存储模块包括:页面信息存储单元,用于获取用户当前操作的业务页面,将所述业务页面的页面信息加入到所述队列的队尾的数据结构单元中;操作信息存储单元,用于监控用户在当前业务页面上的操作,将所述操作信息写入对应的所述数据结构单元中。

优选的是,所述页面信息存储单元包括:一级页面存储子单元,用于根据用户登录客户端业务系统的登录消息获取所述业务系统的一级业务页面;以及二级以上页面存储子单元,用于根据用户对所述业务页面内的控件的操作,获取对应的二级以上的业务页面。

优选的是,还包括报障数据处理模块,所述报障数据处理模块包括:报障信息收集单元,用于响应用户的报障请求,生成报障信息获取控件;保障信息发送单元,用于通过所述报障信息获取控件收集用户的报障信息,并将所述保障信息与所述队列一起发送给监控服务端。

本申请通过对客户端业务页面的事件进行监控,以队列形式保存故障发生前的多级页面的页面信息及操作记录,结合用户报障信息,能够溯源到故障发生前的多个操作场景,降低故障上报经过的环节,快速准确的定位故障。

附图说明

图1是本申请客户端业务错误场景立体监控方法的一优选实施例的流程图。

图2是本申请的一优选实施例的队列信息存储示意图。

图3是本申请的一优选实施例的信息存储过程示意图。

图4是本申请客户端业务错误场景立体监控装置的一优选实施例的架构图。

具体实施方式

为使本申请实施的目的、技术方案和优点更加清楚,下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行更加详细的描述。在附图中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。所描述的实施方式是本申请一部分实施方式,而不是全部的实施方式。下面通过参考附图描述的实施方式是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。基于本申请中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。下面结合附图对本申请的实施方式进行详细说明。

根据本申请第一方面,一种客户端业务错误场景立体监控方法,如图1所示,主要包括:

步骤s1、获取用户当前业务页面的页面信息及操作信息;

步骤s2、将所述页面信息及操作信息作为一个数据结构单元推入一设定长度的队列的队尾,所述队列中的每个元素对应于一个数据结构单元;

步骤s3、继续获取用户打开的新的页面,并重复上述步骤,将新的数据结构单元推入所述队列的队尾,并将旧的数据结构单元向队列的队头移动,若所述队列已全部被填满,则自队头删除旧的数据结构单元;

步骤s4、若页面出现错误,则将所述队列发送给监控服务端。

本申请通过队列来进行页面信息及操作信息的存储,因此需要预置队列,例如事先请求一块内存作为队列,或者根据用户请求提供队列生成要素,接收用户的输入后自动生成队列,所述队列主要为一个大的数据结构,包含多个数量可设置的元素,每个元素作为一个小的数据结构单元,存储了每个页面的页面信息及操作信息,这些信息可以通过一个窗口事件监听组件获取,如图2所示,每个数据结构单元除了存储所监听到的数据之外,还可以包括通过通讯监听组件获取客户端与服务器端的通讯数据,以及包括通过上报组件获取的用户其它报障信息,即每个数据结构单元中一般存储有当前页id、当前页截屏、当前页面控件id数组、当前页通讯信息、当前页返回信息等。

其中,在一个可选实施方式中,生成所述队列包括:

获取配置端输入的用于生成队列的长度信息;

根据预置的队列中的每个元素的数据结构及队列的长度信息生成所述队列。

本申请步骤s3中,根据队列特性,设置先进先出的数据存储机制,判断队列中数据已存满后,再接收到新的数据时,新的数据加入到队列的队尾,并将队列的队头的数据删除。

在一些可选实施方式中,如图3所示,将所述页面信息及操作信息推入队列包括:

获取用户当前操作的业务页面,将所述业务页面的页面信息加入到所述队列的队尾的数据结构单元中;

监控用户在当前业务页面上的操作,将所述操作信息写入对应的所述数据结构单元中。

在一些可选实施方式中,所述获取用户当前操作的业务页面包括:

根据用户登录客户端业务系统的登录消息获取所述业务系统的一级业务页面;以及根据用户对所述业务页面内的控件的操作,获取对应的二级以上的业务页面。

可以理解的是,参考图3,本申请的客户端业务错误场景立体监控方法以监控代理类的形式存储在业务app内,app页面打开时,自动调用该监控代理类,获取了app页面的初始页面的页面信息,即一级业务页面的页面信息,例如页面id、页面截屏等,之后通过窗口事件监听组件获取一级页面的名称、事件函数名、事件内容、事件所属的部件名(例如按钮、多选框等部件)等信息,之后当用户点击相应页面的控件时,触发相应的事件,这些植入的监控代理类代码,会被相应调用,从而将二级页面的页面信息保存到指定队列元素中,同理根据二级业务页面的信息及事件触发,获取三级页面信息,依次类推,得到用户当前页面的页面信息及操作信息。图3中,当发现用户跳转到下一个页面时,判断队列的长度是否大于等于设定的最大长度;若是则删除队列第一个元素;同时将当前页面进行截屏后保存到队尾。

图3未给出步骤s4的操作流程,可以理解的是,步骤s4可以发生在当客户端页面出现故障时,自动或者根据用户请求将队列信息发送给服务器端,也可以在客户端每次与服务器端进行通讯的过程中发送。

在通讯的过程中发送队列的情况包含两种,一是将设定的通讯内容作为附加判断条件,例如在一些重要数据进行通讯时,才携带该队列发送至服务器,其它信息通讯时队列数据不发送,以节省带宽,第二种情况时,在客户端每次与服务器进行通讯时,都将所述队列发送给服务器。

本实施例中,通过封装通讯模块来实现上述过程,即本申请的实现上述方法的监控代理类,对原来的通讯进行了封装,基于图2的通讯监听组件,当app中有通讯时,首先调用该代理类,代理类实现步骤s1-步骤s3后,将相关内容保存到队列中,之后条用以前的通讯模块,当通讯模块有信息返回时,代理类也将信息添加到页面相应用于保存通讯返回信息的地方。

上述实施例中,上述通讯可以采用http协议,也可以采用tcp/ip协议

在一些可选实施方式中,在将所述队列发送给监控服务端之前还包括:

响应用户的报障请求,生成报障信息获取控件;

通过所述报障信息获取控件收集用户的报障信息,并将所述保障信息与所述队列一起发送给监控服务端。

本实施例中,监控代理类提供了一个业务操作报障控件,置于业务页面的最顶层,不随主业务的故障而消失,当用户发现有业务操作失败时,可以通过点击这个控件,弹出报障页面,同时页面也可以追加用户的语音描述或文字描述,最后点击报障按钮,这时app后台的上报组件会将队列中的所有信息及用户的追加信息一起发送给服务器端。

本申请第二方面提供了一种与上述方法对应的客户端业务错误场景立体监控装置,如图4所示,主要包括:

信息获取模块,用于获取用户当前业务页面的页面信息及操作信息;

信息存储模块,用于将所述页面信息及操作信息作为一个数据结构单元推入一设定长度的队列的队尾,所述队列中的每个元素对应于一个数据结构单元;

信息选取模块,用于继续获取用户打开的新的页面,并重复上述步骤,将新的数据结构单元推入所述队列的队尾,并将旧的数据结构单元向队列的队头移动,若所述队列已全部被填满,则自队头删除旧的数据结构单元;

信息发送模块,用于若页面出现错误,则将所述队列发送给监控服务端。

在一些可选实施方式中,还包括队列设置模块,所述队列设置模块包括:

队列长度获取单元,用于获取配置端输入的用于生成队列的长度信息;

队列生成单元,用于根据预置的队列中的每个元素的数据结构及队列的长度信息生成所述队列。

在一些可选实施方式中,所述信息存储模块包括:

页面信息存储单元,用于获取用户当前操作的业务页面,将所述业务页面的页面信息加入到所述队列的队尾的数据结构单元中;

操作信息存储单元,用于监控用户在当前业务页面上的操作,将所述操作信息写入对应的所述数据结构单元中。

在一些可选实施方式中,所述页面信息存储单元包括:

一级页面存储子单元,用于根据用户登录客户端业务系统的登录消息获取所述业务系统的一级业务页面;以及二级以上页面存储子单元,用于根据用户对所述业务页面内的控件的操作,获取对应的二级以上的业务页面。

在一些可选实施方式中,还包括报障数据处理模块,所述报障数据处理模块包括:

报障信息收集单元,用于响应用户的报障请求,生成报障信息获取控件;

保障信息发送单元,用于通过所述报障信息获取控件收集用户的报障信息,并将所述保障信息与所述队列一起发送给监控服务端。

本申请具有以下优点:

1、相较于以往的通过打电话、或者通过填写工单等上报故障、本发明可以直接在客户端上报故障;

2、立体式记录,可以查看发生故障前用户都进行过哪些操作;

3、上报故障的方式多样化,不仅有文字,还能通过截屏、语音进行上报;

4、服务端能直接获取信息,避免由于信息传播路径过长、传播方式单一而导致的信息不准确;

5、上报的及时性高、现场故障可以进行截屏等,从另一方面提高了准确性,而为解决问题赢得了时间。

本申请的第三方面,一种终端设备,包括处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序用于实现如上所述的客户端业务错误场景立体监控方法。

本申请的第四方面,一种可读存储介质,所述可读存储介质存储有计算机程序,所述计算机程序被处理器执行时用于实现如上所述的客户端业务错误场景立体监控方法。

特别地,根据本申请的实施方式,上文参考流程图描述的过程可以被实现为计算机软件程序,特别是安装在手机终端上的计算机程序,其能够与服务器进行交互。例如,本申请的实施方式包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。本申请的计算机存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。

在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本申请各种实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施方式中所涉及到的模块或单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块或单元也可以设置在处理器中,这些模块或单元的名称在某种情况下并不构成对该模块或单元本身的限定。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1