一种程序逻辑监控方法及装置制造方法及图纸

技术编号:26597008 阅读:24 留言:0更新日期:2020-12-04 21:18
本发明专利技术公开了一种程序逻辑监控方法及装置,其中程序逻辑监控方法包括:在目标应用程序执行到预设位置时,根据所述预设位置对应的预设错误日志函数生成所述预设位置的日志信息;将所述日志信息发送给服务器,以使服务器根据日志信息确定目标应用程序中的逻辑异常位置,生成该逻辑异常位置对应的信息收集指令;该信息收集指令用于指示收集与逻辑异常位置相关联的信息;接收服务器发送的信息收集指令,根据信息收集指令收集目标信息;将目标信息发送给服务器,以使服务器根据目标信息确定目标应用程序中存在的逻辑错误。本发明专利技术实现了对应用程序逻辑的实时监控,及时发现应用程序中存在的逻辑错误,确保了应用程序的生命周期。

【技术实现步骤摘要】
一种程序逻辑监控方法及装置
本专利技术涉及计算机
,特别涉及一种程序逻辑监控方法及装置。
技术介绍
随着互联网通信技术的快速发展,终端中安装的应用程序越来越多,用于实现各应用程序的逻辑代码中存在的逻辑错误往往决定了应用程序的生命周期,例如,在运行中频繁出现异常甚至崩溃的应用程序,由于用户体验效果差,会很快被用户遗弃,从而导致该应用程序的生命周期大大缩短。相关技术中,一般是在接收到用户对应用程序运行错误的大量反馈信息后,才进行应用程序中逻辑错误的排查,存在对于应用程序中逻辑错误监控的实时性差的问题,导致无法在应用程序大规模爆发异常问题之前就对该异常问题进行有效的控制,进而影响了应用程序的生命周期。
技术实现思路
为了解决现有技术的问题,本专利技术实施例提供了一种程序逻辑监控方法及装置。所述技术方案如下:一方面,提供了一种程序逻辑监控方法,所述方法包括:在目标应用程序执行到预设位置时,根据所述预设位置对应的预设错误日志函数生成所述预设位置的日志信息;将所述日志信息发送给服务器,以使所述服务器根据所述日志信息确定所述目标应用程序中的逻辑异常位置,生成所述逻辑异常位置对应的信息收集指令;所述信息收集指令用于指示收集与所述逻辑异常位置相关联的信息;接收所述服务器发送的所述信息收集指令,根据所述信息收集指令收集目标信息;将所述目标信息发送给服务器,以使所述服务器根据所述目标信息确定所述目标应用程序中存在的逻辑错误。另一方面,提供了一种程序逻辑监控方法,所述方法包括:接收至少一个客户端发送的日志信息;所述日志信息为所述至少一个客户端在目标应用程序执行到预设位置时,根据所述预设位置对应的预设错误日志函数生成的所述预设位置的日志信息;根据所述日志信息确定所述目标应用程序中的逻辑异常位置;生成所述逻辑异常位置对应的信息收集指令;所述信息收集指令用于指示收集与所述逻辑异常位置相关联的信息;将所述信息收集指令发送给所述至少一个客户端,以使所述至少一个客户端根据所述信息收集指令收集目标信息,并将所述目标信息发送给服务器;根据所述目标信息确定所述目标应用程序中存在的逻辑错误。另一方面,提供了一种程序逻辑监控方法,所述方法包括:客户端在目标应用程序执行到预设位置时,根据所述预设位置对应的预设错误日志函数生成所述预设位置的日志信息;将所述日志信息发送给服务器;服务器接收至少一个客户端发送的日志信息;根据所述日志信息确定所述目标应用程序中的逻辑异常位置;生成所述逻辑异常位置对应的信息收集指令;所述信息收集指令用于指示收集与所述逻辑异常位置相关联的信息;将所述信息收集指令发送给所述至少一个客户端;客户端接收所述服务器发送的信息收集指令,根据所述信息收集指令收集目标信息;将所述目标信息发送给服务器;服务器根据所述至少一个客户端返回的目标信息确定所述目标应用程序中存在的逻辑错误。另一方面,提供了一种程序逻辑监控装置,所述装置包括:日志生成模块,用于在目标应用程序执行到预设位置时,根据所述预设位置对应的预设错误日志函数生成所述预设位置的日志信息;第一发送模块,用于将所述日志信息发送给服务器,以使所述服务器根据所述日志信息确定所述目标应用程序中的逻辑异常位置,生成所述逻辑异常位置对应的信息收集指令;所述信息收集指令用于指示收集与所述逻辑异常位置相关联的信息;目标信息收集模块,用于接收所述服务器发送的所述信息收集指令,根据所述信息收集指令收集目标信息;第二发送模块,用于将所述目标信息发送给服务器,以使所述服务器根据所述目标信息确定所述目标应用程序中存在的逻辑错误。可选的,日志生成模块包括:第三确定模块,用于调用所述预设位置对应的预设错误日志函数,通过所述预设错误日志函数确定所述预设位置的位置标识;第四确定模块,用于根据所述预设错误日志函数的错误级别,确定所述日志信息的日志级别;生成子模块,用于根据所述预设位置的位置标识以及所述日志级别,生成所述预设位置的日志信息。可选的,所述第三确定模块包括:第一获取模块,用于获取所述目标应用程序所在文件的文件名,以及所述预设位置对应的预设输出字符串;第五确定模块,用于确定所述文件名以及所述预设输出字符串所对应的二进制数;运算模块,用于对所述文件名的二进制数和所述预设输出字符串的二进制数进行异或运算,得到所述预设位置的位置标识。可选的,所述装置还包括:存储模块,用于将所述日志信息存储到内存的预设共享存储段中;第二获取模块,用于获取所述预设共享存储段中日志级别为预设级别的日志信息,将所述日志级别为预设级别的日志信息作为将要发送给服务器的所述日志信息。可选的,所述存储模块包括:第五确定模块,用于确定所述日志信息的数据大小;第六确定模块,用于确定所述预设共享存储段中与所述数据大小相匹配的内存偏移位置;写入模块,用于将所述日志信息写入所述内存偏移位置。可选的,所述装置还包括:创建模块,用于响应于所述目标应用程序的启动,在内存中创建所述预设共享存储段。另一方面,提供了一种程序逻辑监控装置,所述装置包括:第一接收模块,用于接收至少一个客户端发送的日志信息;所述日志信息为所述至少一个客户端在目标应用程序执行到预设位置时,根据所述预设位置对应的预设错误日志函数生成的所述预设位置的日志信息;第一确定模块,用于根据所述日志信息确定所述目标应用程序中的逻辑异常位置;收集指令生成模块,用于生成所述逻辑异常位置对应的信息收集指令;所述信息收集指令用于指示收集与所述逻辑异常位置相关联的信息;第三发送模块,用于将所述信息收集指令发送给所述至少一个客户端,以使所述至少一个客户端根据所述信息收集指令收集目标信息,并将所述目标信息发送给服务器;第二确定模块,用于根据所述目标信息确定所述目标应用程序中存在的逻辑错误。可选的,所述第一确定模块包括:第七确定模块,用于根据日志信息中所述预设位置的位置标识,确定每个位置标识所对应日志信息的总数量;判断模块,用于判断所述每个位置标识所对应日志信息的总数量是否满足预设条件;第八确定模块,用于在判断的结果为是时,确定所述位置标识所对应的预设位置为逻辑异常位置。可选的,所述信息收集指令包括收集日志信息的指令和/或收集内存转储的指令;相应的,所述第二确定模块包括:第九确定模块,用于确定收集的日志信息中存在逻辑错误的日志信息;第十确定模块,用于根据所述存在逻辑错误的日志信息中的位置标识,确定所述目标应用程序中存在逻辑错误的位置;和/或,第十一确定模块,用于确定收集的内存转储中对应于存在逻辑错误的日志信息的栈。另一方面,提供了一种程序逻辑监控系统,所述系统包括监控服务器和至少一个客户端,所述至少一个客户端,用于在目标应用程序执行到预设本文档来自技高网...

【技术保护点】
1.一种程序逻辑监控方法,其特征在于,所述方法包括:/n在目标应用程序执行到预设位置时,根据所述预设位置对应的预设错误日志函数生成所述预设位置的日志信息;/n将所述日志信息发送给服务器,以使所述服务器根据所述日志信息确定所述目标应用程序中的逻辑异常位置,生成所述逻辑异常位置对应的信息收集指令;所述信息收集指令用于指示收集与所述逻辑异常位置相关联的信息;/n接收所述服务器发送的所述信息收集指令,根据所述信息收集指令收集目标信息;/n将所述目标信息发送给服务器,以使所述服务器根据所述目标信息确定所述目标应用程序中存在的逻辑错误。/n

【技术特征摘要】
1.一种程序逻辑监控方法,其特征在于,所述方法包括:
在目标应用程序执行到预设位置时,根据所述预设位置对应的预设错误日志函数生成所述预设位置的日志信息;
将所述日志信息发送给服务器,以使所述服务器根据所述日志信息确定所述目标应用程序中的逻辑异常位置,生成所述逻辑异常位置对应的信息收集指令;所述信息收集指令用于指示收集与所述逻辑异常位置相关联的信息;
接收所述服务器发送的所述信息收集指令,根据所述信息收集指令收集目标信息;
将所述目标信息发送给服务器,以使所述服务器根据所述目标信息确定所述目标应用程序中存在的逻辑错误。


2.根据权利要求1所述的程序逻辑监控方法,其特征在于,所述根据所述预设位置对应的预设错误日志函数生成所述预设位置的日志信息包括:
调用所述预设位置对应的预设错误日志函数,通过所述预设错误日志函数确定所述预设位置的位置标识;
根据所述预设错误日志函数的错误级别,确定所述日志信息的日志级别;
根据所述预设位置的位置标识以及所述日志级别,生成所述预设位置的日志信息。


3.根据权利要求2所述的程序逻辑监控方法,其特征在于,所述通过所述预设错误日志函数确定所述预设位置的位置标识包括:
获取所述目标应用程序所在文件的文件名,以及所述预设位置对应的预设输出字符串;
确定所述文件名以及所述预设输出字符串所对应的二进制数;
对所述文件名的二进制数和所述预设输出字符串的二进制数进行异或运算,得到所述预设位置的位置标识。


4.根据权利要求2所述的程序逻辑监控方法,其特征在于,在将所述日志信息发送给服务器之前,所述方法还包括:
将所述日志信息存储到内存的预设共享存储段中;
获取所述预设共享存储段中日志级别为预设级别的日志信息;
将所述日志级别为预设级别的日志信息作为所述日志信息。


5.根据权利要求4所述的程序逻辑监控方法,其特征在于,所述将所述日志信息存储到内存的预设共享存储段中包括:
确定所述日志信息的数据大小;
确定所述预设共享存储段中与所述数据大小相匹配的内存偏移位置;
将所述日志信息写入所述内存偏移位置。


6.根据权利要求4所述的程序逻辑监控方法,其特征在于,在将所述日志信息存储到内存的预设共享存储段中之前,所述方法还包括:
响应于所述目标应用程序的启动,在内存中创建所述预设共享存储段。


7.一种程序逻辑的监控方法,其特征在于,所述方法包括:
接收至少一个客户端发送的日志信息;所述日志信息为所述至少一个客户端在目标应用程序执行到预设位置时,根据所述预设位置对应的预设错误日志函数生成的所述预设位置的日志信息;
根据所述日志信息确定所述目标应用程序中的逻辑异常位置;

【专利技术属性】
技术研发人员:罗谷才杨传辉张英皓
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1