程序运行问题定位方法、装置、设备及存储介质与流程

文档序号:29265611发布日期:2022-03-16 13:53阅读:90来源:国知局
程序运行问题定位方法、装置、设备及存储介质与流程

1.本发明涉及监控技术领域,尤其涉及一种程序运行问题定位方法、装置、设备及存储介质。


背景技术:

2.随着业务的推广,应用程序中的用户数量也随之增多,用户在运行该应用程序时出现运行错误的频率也随之增多。然而,发明人意识到,应用程序在运行错误时会直接输出运行错误的结果,导致用户在遇到问题后无法提供造成应用程序运行错误的有效信息,而目前的运行问题定位方式只能通过调取用户在执行操作的整个流程日志进行分析,由于操作流程日志中存在多个干扰因素,造成无法准确的定位出用户所遇到的操作问题。


技术实现要素:

3.鉴于以上内容,有必要提供一种程序运行问题定位方法、装置、设备及存储介质,能够在用户无法提供有效信息时,准确的定位出用户所遇到的操作问题。
4.一方面,本发明提出一种程序运行问题定位方法,所述程序运行问题定位方法包括:
5.接收用户请求,其中,所述用户请求包括用户身份信息以及执行信息;
6.根据所述用户身份信息及所述执行信息生成执行任务;
7.当监测到所述执行任务完成处理时,获取所述执行任务的响应结果;
8.对所述响应结果进行多维度分析,得到所述执行任务在每个维度上的结果类别;
9.若所述结果类别中包括预设类别,则识别所述用户请求的操作用户,并根据所述操作用户从预设消息系统中获取所述用户请求的入参;
10.根据所述入参及所述预设类别生成告警信息。
11.根据本发明优选实施例,在接收用户请求之前,所述方法还包括:
12.接收用户账号的登录请求;
13.从所述登录请求中提取所述用户账号的账号标识及账号请求密码;
14.调用登录接口检测所述账号标识与所述账号请求密码是否匹配;
15.若所述账号标识与所述账号请求密码匹配,则确定所述用户账号登录成功。
16.根据本发明优选实施例,所述根据所述用户身份信息及所述执行信息生成执行任务包括:
17.基于所述登录请求识别所述用户账号所登录的应用程序作为目标应用程序;
18.从预设服务器集群中定位出与所述目标应用程序对应的数据库服务器;
19.从所述用户身份信息中提取所述操作用户的用户识别码;
20.基于所述用户识别码从所述数据库服务器中获取所述用户账号的账号信息;
21.根据所述账号信息封装所述执行信息,得到所述执行任务。
22.根据本发明优选实施例,所述根据所述操作用户从预设消息系统中获取所述用户
请求的入参包括:
23.基于所述用户识别码遍历所述预设消息系统中的每个区块;
24.将与所述用户识别码匹配成功的区块确定为所述操作用户的存储区块;
25.获取所述用户请求的请求标识;
26.从所述存储区块中获取同时与所述请求标识及预设标签对应的增量信息作为所述入参。
27.根据本发明优选实施例,所述获取所述执行任务的响应结果包括:
28.定位监测到所述执行任务完成处理时所对应的目标时刻;
29.获取所述执行任务的任务标识;
30.基于所述任务标识及所述目标时刻从日志库中获取日志信息;
31.解析所述日志信息的报文,得到所述响应结果。
32.根据本发明优选实施例,所述多维度包括重点行为维度、结果处理维度和时效处理维度,所述对所述响应结果进行多维度分析,得到所述执行任务在每个维度上的结果类别包括:
33.从所述响应结果中提取行为信息,获取所述重点行为维度的行为映射表,并基于所述行为信息遍历所述行为映射表,若所述行为信息与所述行为映射表中的任一预设行为匹配成功,则将所述执行任务在所述重点行为维度上的结果类别确定为所述任一预设行为;
34.从所述响应结果中提取所述执行任务的任务执行时间,若所述任务执行时间大于或者等于预设时间阈值,则将所述执行任务在所述时效维度上的结果类别确定为慢处理任务;
35.从所述响应结果中提取响应码,并对所述响应码进行映射处理,得到所述执行任务在所述结果处理维度上的结果类别。
36.根据本发明优选实施例,所述根据所述入参及所述预设类别生成告警信息包括:
37.对所述入参及所述预设类别进行标签识别,得到所述入参及所述预设类别的数据标签;
38.根据所述数据标签将所述入参及所述预设类别写入预设模板中,得到所述告警信息。
39.另一方面,本发明还提出一种程序运行问题定位装置,所述程序运行问题定位装置包括:
40.接收单元,用于接收用户请求,其中,所述用户请求包括用户身份信息以及执行信息;
41.生成单元,用于根据所述用户身份信息及所述执行信息生成执行任务;
42.获取单元,用于当监测到所述执行任务完成处理时,获取所述执行任务的响应结果;
43.分析单元,用于对所述响应结果进行多维度分析,得到所述执行任务在每个维度上的结果类别;
44.所述获取单元,还用于若所述结果类别中包括预设类别,则识别所述用户请求的操作用户,并根据所述操作用户从预设消息系统中获取所述用户请求的入参;
45.生成单元,用于根据所述入参及所述预设类别生成告警信息。
46.另一方面,本发明还提出一种电子设备,所述电子设备包括:
47.存储器,存储计算机可读指令;及
48.处理器,执行所述存储器中存储的计算机可读指令以实现所述程序运行问题定位方法。
49.另一方面,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可读指令,所述计算机可读指令被电子设备中的处理器执行以实现所述程序运行问题定位方法。
50.由以上技术方案可以看出,本发明通过与所述用户身份信息对应的账号信息对所述执行信息进行标识,从而能够得到标识有所述操作用户的执行任务,便于后续所述执行任务执行异常时直接对入参进行拉取,进而通过对所述响应结果进行多维度分析,能够全面并准确的识别出所述执行任务所对应的结果类别,在检测到所述结果类别中包括所述预设类别时生成所述告警信息,提高告警信息的生成效率,同时,通过生成所述告警信息,有利于研发用户基于所述告警信息快速获悉操作用户在运行应用程序时所遇到的操作问题。
附图说明
51.图1是本发明程序运行问题定位方法的较佳实施例的流程图。
52.图2是本发明程序运行问题定位装置的较佳实施例的功能模块图。
53.图3是本发明实现程序运行问题定位方法的较佳实施例的电子设备的结构示意图。
具体实施方式
54.为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
55.如图1所示,是本发明程序运行问题定位方法的较佳实施例的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
56.所述程序运行问题定位方法可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
57.人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
58.所述程序运行问题定位方法应用于一个或者多个电子设备中,所述电子设备是一种能够按照事先设定或存储的计算机可读指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(application specific integrated circuit,asic)、可编程门阵列(field-programmable gate array,fpga)、数字信号处理器(digital signal processor,dsp)、嵌入式设备等。
59.所述电子设备可以是任何一种可与用户进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(personal digital assistant,pda)、游戏机、交互式网络电视(internet protocol television,iptv)、智能穿戴式设备等。
60.所述电子设备可以包括网络设备和/或用户设备。其中,所述网络设备包括,但不限于单个网络电子设备、多个网络电子设备组成的电子设备组或基于云计算(cloud computing)的由大量主机或网络电子设备构成的云。
61.所述电子设备所处的网络包括,但不限于:互联网、广域网、城域网、局域网、虚拟专用网络(virtual private network,vpn)等。
62.s10,接收用户请求,其中,所述用户请求包括用户身份信息以及执行信息。
63.在本发明的至少一个实施例中,所述用户请求可以在用户进行任意操作时触发生成的请求。其中,所述任意操作包括用户购买订单等操作信息。
64.所述用户身份信息用于指示操作所述用户请求的用户。
65.所述执行信息是指需要进行任务处理的信息。
66.在本发明的至少一个实施例中,在接收用户请求之前,所述方法还包括:
67.接收用户账号的登录请求;
68.从所述登录请求中提取所述用户账号的账号标识及账号请求密码;
69.调用登录接口检测所述账号标识与所述账号请求密码是否匹配;
70.若所述账号标识与所述账号请求密码匹配,则确定所述用户账号登录成功。
71.其中,所述登录请求可以由所述操作用户触发生成。所述用户账号是指任意应用程序中的注册账号。
72.所述账号标识用于指示所述用户账号,所述账号请求密码是指所述操作用户登录所述用户账号时所输入的密码信息。
73.通过在接收用户请求之前,对所述用户账号进行验证,能够确保所述用户账号有执行用户操作的权限,提高了所述用户请求的执行安全性。
74.s11,根据所述用户身份信息及所述执行信息生成执行任务。
75.在本发明的至少一个实施例中,所述执行任务是指携带有与所述用户身份信息对应的操作用户的账号信息及所述执行信息的任务。
76.在本发明的至少一个实施例中,所述电子设备根据所述用户身份信息及所述执行信息生成执行任务包括:
77.基于所述登录请求识别所述用户账号所登录的应用程序作为目标应用程序;
78.从预设服务器集群中定位出与所述目标应用程序对应的数据库服务器;
79.从所述用户身份信息中提取所述操作用户的用户识别码;
80.基于所述用户识别码从所述数据库服务器中获取所述用户账号的账号信息;
81.根据所述账号信息封装所述执行信息,得到所述执行任务。
82.其中,所述目标应用程序可以是任意平台或者网页。
83.所述预设服务器集群通常是指redis集群。
84.所述数据库服务器中存储有所述目标应用程序上的相关操作信息。例如,所述数据库服务器中存储有多个账号的注册信息,其中,所述注册信息可以包括会员信息等。
85.通过所述登录请求能够准确的识别出所述目标应用程序,进而基于所述目标应用
程序能够准确的从所述预设服务器集群中定位出所述数据库服务器,从而基于所述用户识别码能够准确的获取到所述账号信息,进一步基于所述账号信息生成所述执行任务,便于识别所述执行任务的操作账号。
86.具体地,所述电子设备将所述账号信息作为请求头,所述执行信息作为报文内容生成所述执行任务。
87.s12,当监测到所述执行任务完成处理时,获取所述执行任务的响应结果。
88.在本发明的至少一个实施例中,所述电子设备调用监控模块监控所述执行任务的执行。
89.在本发明的至少一个实施例中,所述响应结果中包括所述执行任务中的相关行为操作、处理所述执行任务所花费的时间以及处理所述执行任务所对应的响应情况等。
90.在本发明的至少一个实施例中,所述电子设备获取所述执行任务的响应结果包括:
91.定位监测到所述执行任务完成处理时所对应的目标时刻;
92.获取所述执行任务的任务标识;
93.基于所述任务标识及所述目标时刻从日志库中获取日志信息;
94.解析所述日志信息的报文,得到所述响应结果。
95.其中,所述目标时刻是指所述执行任务完成处理时所对应的时刻。
96.所述日志库中存储有任务执行过程中的相关日志信息。
97.通过所述目标时刻及所述任务标识能够准确的获取到所述日志信息,从而能够准确的获取到所述响应结果。
98.s13,对所述响应结果进行多维度分析,得到所述执行任务在每个维度上的结果类别。
99.在本发明的至少一个实施例中,所述多维度包括重点行为维度、结果处理维度和时效处理维度。
100.所述响应结果在每个维度上对应有不同的结果类别。例如,所述响应结果在所述重点行为维度上的结果类别可以有购买订单行为等。所述响应结果在所述结果处理维度上的结果类别可以有正常处理结果及异常处理结果。所述响应结果在所述时效处理维度上的结果类别可以有慢处理任务及快处理任务。
101.在本发明的至少一个实施例中,所述电子设备对所述响应结果进行多维度分析,得到所述执行任务在每个维度上的结果类别包括:
102.从所述响应结果中提取行为信息,获取所述重点行为维度的行为映射表,并基于所述行为信息遍历所述行为映射表,若所述行为信息与所述行为映射表中的任一预设行为匹配成功,则将所述执行任务在所述重点行为维度上的结果类别确定为所述任一预设行为;
103.从所述响应结果中提取所述执行任务的任务执行时间,若所述任务执行时间大于或者等于预设时间阈值,则将所述执行任务在所述时效维度上的结果类别确定为慢处理任务;
104.从所述响应结果中提取响应码,并对所述响应码进行映射处理,得到所述执行任务在所述结果处理维度上的结果类别。
105.其中,所述响应结果中包括所述执行任务中的行为信息,例如,所述行为信息可以包括:购买订单行为、签到行为等。
106.所述行为映射表中存储有多个需要重点关注的行为,例如,所述行为映射表中可以存储有多个与金额相关的行为。
107.所述任务执行时间是指处理所述执行任务所花费的时间。例如,所述任务执行时间可以是50秒。
108.所述预设时间阈值可以根据所述电子设备处理所述目标应用程序上的请求的平均时间设定。
109.所述执行任务在所述结果处理维度上的结果类别包括正常处理结果及异常处理结果。
110.通过所述行为信息与所述行为映射表的匹配关系能够准确的确定出所述执行任务在所述重点行为维度上的结果类别,通过所述任务执行时间与所述预设时间阈值的比较,能够准确的确定出所述执行任务在所述时效维度上的结果类别,通过对所述响应码进行映射处理,能够准确的得到所述执行任务在所述结果处理维度上的结果类别。
111.在本发明的至少一个实施例中,若所述行为信息与所述行为映射表中的所有预设行为匹配失败,则所述电子设备将所述执行任务在所述重点行为维度上的结果类别确定为配置类别。其中,所述配置类别表示所述行为信息中没有包括重点行为。
112.在本发明的至少一个实施例中,若所述任务执行时间小于预设时间阈值,则所述电子设备将所述执行任务在所述时效维度上的结果类别确定为快处理任务。
113.在本发明的至少一个实施例中,根据所述响应码的不同,所述电子设备得到所述执行任务在所述结果处理维度上的结果类别有所不同,例如,若所述响应码为0,则所述执行任务在所述结果处理维度上的结果类别可以为正常处理结果,相反的,若所述响应码为1,则所述执行任务在所述结果处理维度上的结果类别可以为异常处理结果。
114.s14,若所述结果类别中包括预设类别,则识别所述用户请求的操作用户,并根据所述操作用户从预设消息系统中获取所述用户请求的入参。
115.在本发明的至少一个实施例中,所述预设类别包括异常处理结果、慢处理任务等不利于用户的类别。
116.所述操作用户是指触发所述用户请求生成的用户。所述操作用户可以是任意应用程序的会员用户。
117.所述预设消息系统可以是kafka等消费系统。
118.所述入参包括所述用户请求中的对象信息等。
119.在本发明的至少一个实施例中,在根据所述操作用户从预设消息系统中获取所述用户请求的入参之前,所述方法还包括:
120.基于aop算法对所述用户请求进行解耦处理,得到所述入参;
121.将所述用户请求与所述入参的映射关系存储在所述预设消息系统中。
122.在本发明的至少一个实施例中,所述电子设备根据所述操作用户从预设消息系统中获取所述用户请求的入参包括:
123.基于所述用户识别码遍历所述预设消息系统中的每个区块;
124.将与所述用户识别码匹配成功的区块确定为所述操作用户的存储区块;
125.获取所述用户请求的请求标识;
126.从所述存储区块中获取同时与所述请求标识及预设标签对应的增量信息作为所述入参。
127.其中,所述存储区块是指存储与所述操作用户相关的所有信息,例如,所述存储区块可以存储所述操作用户的任务请求等。
128.所述预设标签用于指示入参。
129.通过从所述预设消息系统中定位出所述存储区块,由于能够从所述存储区块中获取所述入参,而无需对所述预设消息系统进行完全遍历,因此提高了所述入参的获取效率。
130.s15,根据所述入参及所述预设类别生成告警信息。
131.需要强调的是,为进一步保证上述告警信息的私密和安全性,上述告警信息还可以存储于一区块链的节点中。
132.在本发明的至少一个实施例中,所述告警信息用于向运维用户提示所述操作用户在运行所述目标应用程序时所遇到的问题。
133.在本发明的至少一个实施例中,所述电子设备根据所述入参及所述预设类别生成告警信息包括:
134.对所述入参及所述预设类别进行标签识别,得到所述入参及所述预设类别的数据标签;
135.根据所述数据标签将所述入参及所述预设类别写入预设模板中,得到所述告警信息。
136.其中,所述数据标签是指所述入参及所述预设类别的标签信息,例如,所述入参为60b4681e026fc287,则所述数据标签为requestid。
137.所述预设模板是指包含有多个数据标签的模板信息。
138.通过对所述入参及所述预设类别进行标签识别,能够得到准确的识别出所述数据标签,进而基于所述数据标签将所述入参及所述预设类别写入预设模板中,能够快速的生成所述告警信息。
139.由以上技术方案可以看出,本发明通过与所述用户身份信息对应的账号信息对所述执行信息进行标识,从而能够得到标识有所述操作用户的执行任务,便于后续所述执行任务执行异常时直接对入参进行拉取,进而通过对所述响应结果进行多维度分析,能够全面并准确的识别出所述执行任务所对应的结果类别,在检测到所述结果类别中包括所述预设类别时生成所述告警信息,提高告警信息的生成效率,同时,通过生成所述告警信息,有利于研发用户基于所述告警信息快速获悉操作用户在运行应用程序时所遇到的操作问题。
140.如图2所示,是本发明程序运行问题定位装置的较佳实施例的功能模块图。所述程序运行问题定位装置11包括接收单元110、生成单元111、获取单元112、分析单元113、存储单元114、提取单元115、检测单元116、确定单元117及解耦单元118。本发明所称的模块/单元是指一种能够被处理器13所获取,并且能够完成固定功能的一系列计算机可读指令段,其存储在存储器12中。在本实施例中,关于各模块/单元的功能将在后续的实施例中详述。
141.接收单元110接收用户请求,其中,所述用户请求包括用户身份信息以及执行信息。
142.在本发明的至少一个实施例中,所述用户请求可以在用户进行任意操作时触发生
成的请求。其中,所述任意操作包括用户购买订单等操作信息。
143.所述用户身份信息用于指示操作所述用户请求的用户。
144.所述执行信息是指需要进行任务处理的信息。
145.在本发明的至少一个实施例中,在接收用户请求之前,所述接收单元110接收用户账号的登录请求;
146.提取单元115从所述登录请求中提取所述用户账号的账号标识及账号请求密码;
147.检测单元116调用登录接口检测所述账号标识与所述账号请求密码是否匹配;
148.若所述账号标识与所述账号请求密码匹配,则确定单元117确定所述用户账号登录成功。
149.其中,所述登录请求可以由所述操作用户触发生成。所述用户账号是指任意应用程序中的注册账号。
150.所述账号标识用于指示所述用户账号,所述账号请求密码是指所述操作用户登录所述用户账号时所输入的密码信息。
151.通过在接收用户请求之前,对所述用户账号进行验证,能够确保所述用户账号有执行用户操作的权限,提高了所述用户请求的执行安全性。
152.生成单元111根据所述用户身份信息及所述执行信息生成执行任务。
153.在本发明的至少一个实施例中,所述执行任务是指携带有与所述用户身份信息对应的操作用户的账号信息及所述执行信息的任务。
154.所述执行任务是指携带有所述操作用户的账号信息及所述用户请求的任务。
155.在本发明的至少一个实施例中,所述生成单元111根据所述用户身份信息及所述执行信息生成执行任务包括:
156.基于所述登录请求识别所述用户账号所登录的应用程序作为目标应用程序;
157.从预设服务器集群中定位出与所述目标应用程序对应的数据库服务器;
158.从所述用户身份信息中提取所述操作用户的用户识别码;
159.基于所述用户识别码从所述数据库服务器中获取所述用户账号的账号信息;
160.根据所述账号信息封装所述执行信息,得到所述执行任务。
161.其中,所述目标应用程序可以是任意平台或者网页。
162.所述预设服务器集群通常是指redis集群。
163.所述数据库服务器中存储有所述目标应用程序上的相关操作信息。例如,所述数据库服务器中存储有多个账号的注册信息,其中,所述注册信息可以包括会员信息等。
164.通过所述登录请求能够准确的识别出所述目标应用程序,进而基于所述目标应用程序能够准确的从所述预设服务器集群中定位出所述数据库服务器,从而基于所述用户识别码能够准确的获取到所述账号信息,进一步基于所述账号信息生成所述执行任务,便于识别所述执行任务的操作账号。
165.具体地,所述生成单元111将所述账号信息作为请求头,所述执行信息作为报文内容生成所述执行任务。
166.当监测到所述执行任务完成处理时,获取单元112获取所述执行任务的响应结果。
167.在本发明的至少一个实施例中,所述获取单元112调用监控模块监控所述执行任务的执行。
168.在本发明的至少一个实施例中,所述响应结果中包括所述执行任务中的相关行为操作、处理所述执行任务所花费的时间以及处理所述执行任务所对应的响应情况等。
169.在本发明的至少一个实施例中,所述获取单元112获取所述执行任务的响应结果包括:
170.定位监测到所述执行任务完成处理时所对应的目标时刻;
171.获取所述执行任务的任务标识;
172.基于所述任务标识及所述目标时刻从日志库中获取日志信息;
173.解析所述日志信息的报文,得到所述响应结果。
174.其中,所述目标时刻是指所述执行任务完成处理时所对应的时刻。
175.所述日志库中存储有任务执行过程中的相关日志信息。
176.通过所述目标时刻及所述任务标识能够准确的获取到所述日志信息,从而能够准确的获取到所述响应结果。
177.分析单元113对所述响应结果进行多维度分析,得到所述执行任务在每个维度上的结果类别。
178.在本发明的至少一个实施例中,所述多维度包括重点行为维度、结果处理维度和时效处理维度。
179.所述响应结果在每个维度上对应有不同的结果类别。例如,所述响应结果在所述重点行为维度上的结果类别可以有购买订单行为等。所述响应结果在所述结果处理维度上的结果类别可以有正常处理结果及异常处理结果。所述响应结果在所述时效处理维度上的结果类别可以有慢处理任务及快处理任务。
180.在本发明的至少一个实施例中,所述分析单元113对所述响应结果进行多维度分析,得到所述执行任务在每个维度上的结果类别包括:
181.从所述响应结果中提取行为信息,获取所述重点行为维度的行为映射表,并基于所述行为信息遍历所述行为映射表,若所述行为信息与所述行为映射表中的任一预设行为匹配成功,则将所述执行任务在所述重点行为维度上的结果类别确定为所述任一预设行为;
182.从所述响应结果中提取所述执行任务的任务执行时间,若所述任务执行时间大于或者等于预设时间阈值,则将所述执行任务在所述时效维度上的结果类别确定为慢处理任务;
183.从所述响应结果中提取响应码,并对所述响应码进行映射处理,得到所述执行任务在所述结果处理维度上的结果类别。
184.其中,所述响应结果中包括所述执行任务中的行为信息,例如,所述行为信息可以包括:购买订单行为、签到行为等。
185.所述行为映射表中存储有多个需要重点关注的行为,例如,所述行为映射表中可以存储有多个与金额相关的行为。
186.所述任务执行时间是指处理所述执行任务所花费的时间。例如,所述任务执行时间可以是50秒。
187.所述预设时间阈值可以根据电子设备处理所述目标应用程序上的请求的平均时间设定。
188.所述执行任务在所述结果处理维度上的结果类别包括正常处理结果及异常处理结果。
189.通过所述行为信息与所述行为映射表的匹配关系能够准确的确定出所述执行任务在所述重点行为维度上的结果类别,通过所述任务执行时间与所述预设时间阈值的比较,能够准确的确定出所述执行任务在所述时效维度上的结果类别,通过对所述响应码进行映射处理,能够准确的得到所述执行任务在所述结果处理维度上的结果类别。
190.在本发明的至少一个实施例中,若所述行为信息与所述行为映射表中的所有预设行为匹配失败,则所述分析单元113将所述执行任务在所述重点行为维度上的结果类别确定为配置类别。其中,所述配置类别表示所述行为信息中没有包括重点行为。
191.在本发明的至少一个实施例中,若所述任务执行时间小于预设时间阈值,则所述分析单元113将所述执行任务在所述时效维度上的结果类别确定为快处理任务。
192.在本发明的至少一个实施例中,根据所述响应码的不同,所述分析单元113得到所述执行任务在所述结果处理维度上的结果类别有所不同,例如,若所述响应码为0,则所述执行任务在所述结果处理维度上的结果类别可以为正常处理结果,相反的,若所述响应码为1,则所述执行任务在所述结果处理维度上的结果类别可以为异常处理结果。
193.若所述结果类别中包括预设类别,则所述获取单元112识别所述用户请求的操作用户,并根据所述操作用户从预设消息系统中获取所述用户请求的入参。
194.在本发明的至少一个实施例中,所述预设类别包括异常处理结果、慢处理任务等不利于用户的类别。
195.所述操作用户是指触发所述用户请求生成的用户。所述操作用户可以是任意应用程序的会员用户。
196.所述预设消息系统可以是kafka等消费系统。
197.所述入参包括所述用户请求中的对象信息等。
198.在本发明的至少一个实施例中,在根据所述操作用户从预设消息系统中获取所述用户请求的入参之前,解耦单元118基于aop算法对所述用户请求进行解耦处理,得到所述入参;
199.存储单元114将所述用户请求与所述入参的映射关系存储在所述预设消息系统中。
200.在本发明的至少一个实施例中,所述获取单元112根据所述操作用户从预设消息系统中获取所述用户请求的入参包括:
201.基于所述用户识别码遍历所述预设消息系统中的每个区块;
202.将与所述用户识别码匹配成功的区块确定为所述操作用户的存储区块;
203.获取所述用户请求的请求标识;
204.从所述存储区块中获取同时与所述请求标识及预设标签对应的增量信息作为所述入参。
205.其中,所述存储区块是指存储与所述操作用户相关的所有信息,例如,所述存储区块可以存储所述操作用户的任务请求等。
206.所述预设标签用于指示入参。
207.通过从所述预设消息系统中定位出所述存储区块,由于能够从所述存储区块中获
取所述入参,而无需对所述预设消息系统进行完全遍历,因此提高了所述入参的获取效率。
208.所述生成单元111根据所述入参及所述预设类别生成告警信息。
209.需要强调的是,为进一步保证上述告警信息的私密和安全性,上述告警信息还可以存储于一区块链的节点中。
210.在本发明的至少一个实施例中,所述告警信息用于向运维用户提示所述操作用户在运行所述目标应用程序时所遇到的问题。
211.在本发明的至少一个实施例中,所述生成单元111根据所述入参及所述预设类别生成告警信息包括:
212.对所述入参及所述预设类别进行标签识别,得到所述入参及所述预设类别的数据标签;
213.根据所述数据标签将所述入参及所述预设类别写入预设模板中,得到所述告警信息。
214.其中,所述数据标签是指所述入参及所述预设类别的标签信息,例如,所述入参为60b4681e026fc287,则所述数据标签为requestid。
215.所述预设模板是指包含有多个数据标签的模板信息。
216.通过对所述入参及所述预设类别进行标签识别,能够得到准确的识别出所述数据标签,进而基于所述数据标签将所述入参及所述预设类别写入预设模板中,能够快速的生成所述告警信息。
217.由以上技术方案可以看出,本发明通过与所述用户身份信息对应的账号信息对所述执行信息进行标识,从而能够得到标识有所述操作用户的执行任务,便于后续所述执行任务执行异常时直接对入参进行拉取,进而通过对所述响应结果进行多维度分析,能够全面并准确的识别出所述执行任务所对应的结果类别,在检测到所述结果类别中包括所述预设类别时生成所述告警信息,提高告警信息的生成效率,同时,通过生成所述告警信息,有利于研发用户基于所述告警信息快速获悉操作用户在运行应用程序时所遇到的操作问题。
218.如图3所示,是本发明实现程序运行问题定位方法的较佳实施例的电子设备的结构示意图。
219.在本发明的一个实施例中,所述电子设备1包括,但不限于,存储器12、处理器13,以及存储在所述存储器12中并可在所述处理器13上运行的计算机可读指令,例如程序运行问题定位程序。
220.本领域技术人员可以理解,所述示意图仅仅是电子设备1的示例,并不构成对电子设备1的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备1还可以包括输入输出设备、网络接入设备、总线等。
221.所述处理器13可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器13是所述电子设备1的运算核心和控制中心,利用各种接口和线路连接整个电子设备1的各个部分,及执行所述电子设备1的操作系统以及安装的各类应用程序、程序
代码等。
222.示例性的,所述计算机可读指令可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器13执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该计算机可读指令段用于描述所述计算机可读指令在所述电子设备1中的执行过程。例如,所述计算机可读指令可以被分割成接收单元110、生成单元111、获取单元112、分析单元113、存储单元114、提取单元115、检测单元116、确定单元117及解耦单元118。
223.所述存储器12可用于存储所述计算机可读指令和/或模块,所述处理器13通过运行或执行存储在所述存储器12内的计算机可读指令和/或模块,以及调用存储在存储器12内的数据,实现所述电子设备1的各种功能。所述存储器12可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。存储器12可以包括非易失性和易失性存储器,例如:硬盘、内存、插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他存储器件。
224.所述存储器12可以是电子设备1的外部存储器和/或内部存储器。进一步地,所述存储器12可以是具有实物形式的存储器,如内存条、tf卡(trans-flash card)等等。
225.所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一计算机可读存储介质中,该计算机可读指令在被处理器执行时,可实现上述各个方法实施例的步骤。
226.其中,所述计算机可读指令包括计算机可读指令代码,所述计算机可读指令代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机可读指令代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)。
227.本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
228.结合图1,所述电子设备1中的所述存储器12存储计算机可读指令实现一种程序运行问题定位方法,所述处理器13可执行所述计算机可读指令从而实现:
229.接收用户请求,其中,所述用户请求包括用户身份信息以及执行信息;
230.根据所述用户身份信息及所述执行信息生成执行任务;
231.当监测到所述执行任务完成处理时,获取所述执行任务的响应结果;
232.对所述响应结果进行多维度分析,得到所述执行任务在每个维度上的结果类别;
233.若所述结果类别中包括预设类别,则识别所述用户请求的操作用户,并根据所述
操作用户从预设消息系统中获取所述用户请求的入参;
234.根据所述入参及所述预设类别生成告警信息。
235.具体地,所述处理器13对上述计算机可读指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
236.在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
237.所述计算机可读存储介质上存储有计算机可读指令,其中,所述计算机可读指令被处理器13执行时用以实现以下步骤:
238.接收用户请求,其中,所述用户请求包括用户身份信息以及执行信息;
239.根据所述用户身份信息及所述执行信息生成执行任务;
240.当监测到所述执行任务完成处理时,获取所述执行任务的响应结果;
241.对所述响应结果进行多维度分析,得到所述执行任务在每个维度上的结果类别;
242.若所述结果类别中包括预设类别,则识别所述用户请求的操作用户,并根据所述操作用户从预设消息系统中获取所述用户请求的入参;
243.根据所述入参及所述预设类别生成告警信息。
244.所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
245.另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
246.因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
247.此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。所述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一、第二等词语用来表示名称,而并不表示任何特定的顺序。
248.最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1