【技术实现步骤摘要】
系统调试装置及方法
本公开涉及计算机应用
,尤其是涉及一种系统调试装置及方法。
技术介绍
随着网络的蓬勃发展,大型分布式系统是现代软件系统普遍方案,而系统运行稳定性又是很多互联网系统追求的目标,故此,一般互联网系统都会采用多种系统环境来保证系统的稳定性。现有互联网系统一般都分为测试环境、生产环境等,而生产环境是用户访问的环境,所以,生产环境是开发人员不能随意变动或修改的,而且,很多公司都会严格控制上线流程,保证生产环境的系统服务稳定。目前,系统在产线运行时,经常会遇到的一些各类测试环境不好复现、通过日志也无法准确定位的问题。以前的做法往往是给产线服务打上各类补丁,观察产线的运行时状态,有时候随着问题深入,还需要不停地打补丁,频繁更新产线服务,非常影响产线服务的稳定。目前虽然很多语言开发的系统已经支持通过远程调试的功能,但是这类调试功能会阻断所有请求,这类调试模式不适合在产线进行的。
技术实现思路
本公开的目的在于提供一种,以解决相关技术中系统在产线运行,对系统进行调试需要不断的更新产线服务,非常影响产线服务的稳定的问题。根据本公开的第一方面,提供一种系统调试装置 ...
【技术保护点】
1.一种系统调试装置,其特征在于,包括:操作模块,用于对应用系统的产线调试过程进行可视化操作,所述可视化操作包括:定义所述应用系统的原始字节码文件的断点以及根据产线问题选择织入所述断点中的可执行插件;其中,所述应用系统采用支持字节码文件解析的语言编写;调试模块,包括多个所述可执行插件,设置在所述应用系统的内部,随所述应用系统的启动一起启动;用于将所述根据产线问题选择选出的所述可执行插件织入所述定义的原始字节码文件的断点中,形成调试字节码文件;开关模块,用于开启或关闭产线调试,在开启产线调试的模式下,对所述应用系统的产线业务流量进行小流量分流或小流量复制,并将所述分流或所述复 ...
【技术特征摘要】
1.一种系统调试装置,其特征在于,包括:操作模块,用于对应用系统的产线调试过程进行可视化操作,所述可视化操作包括:定义所述应用系统的原始字节码文件的断点以及根据产线问题选择织入所述断点中的可执行插件;其中,所述应用系统采用支持字节码文件解析的语言编写;调试模块,包括多个所述可执行插件,设置在所述应用系统的内部,随所述应用系统的启动一起启动;用于将所述根据产线问题选择选出的所述可执行插件织入所述定义的原始字节码文件的断点中,形成调试字节码文件;开关模块,用于开启或关闭产线调试,在开启产线调试的模式下,对所述应用系统的产线业务流量进行小流量分流或小流量复制,并将所述分流或所述复制的产线业务流量导入所述调试模块。2.如权利要求1所述的系统调试装置,其特征在于,所述调试模块通过字节码技术,结合所述应用系统的字节码文件的源码或者反编译字节码文件,将所述选出的所述可执行插件织入所述原始字节码文件的断点中,实现动态修改所述原始字节码文件,形成所述调试字节码文件并实时生效所述调试字节码文件。3.如权利要求2所述的系统调试装置,其特征在于,在所述定义的所述断点中,织入各类所述可执行插件,形成所述调试字节码文件。4.如权利要求1所述的系统调试装置,其特征在于,所述开关模块通过设置流量比例对所述产线业务流量进行分发,将所述产线业务流量分流至所述调试模块;所述开关模块通过TCPCOPY技术对所述产线业务流量进行小流量复制。5.如权利要求1所述的系统调试装置,其特征在于,所述应用系统包括JVM语言开发的业务系统,所述调试模块通过结合断点调试技术和JVM语言提供的基础字节码工具完成在所述断点中织入所述可执行插件。6.如权利要求1所述的系统调试装置,其特征在于,所述织入的所述断点包括所述原始字节码文件中方法体的入口。7.如权利要求6所述的系统调试装置,其特征在于,织入所述方法体的所述可执行插件通过反射机制,自动获取所述方法体的入参和返回值并将所述入参和所述返回值动态发送到所述操作模块。8.如权利要求1所述的系统调试装置,其特征在于,所述调试模块通...
【专利技术属性】
技术研发人员:李滔,
申请(专利权)人:鑫涌算力信息科技上海有限公司,
类型:发明
国别省市:上海,31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。