System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及计算机,具体而言,涉及一种业务流程的调试方法、装置、电子设备及存储介质。
技术介绍
1、目前,在业务开发的过程中,随着业务复杂化,针对不同业务的处理需求,往往会针对性的设置对应的业务处理流程进而实现规范化、流程化的业务实现。在现有的业务流程调试过程中,主要在工程具体的组件代码中显性埋点,即在具体需要停顿的组件的执行前键入调试标志及下属的范围的停止的代码逻辑,并且在编译的过程中或者执行参数打开调试标志。
2、但是,目前业界只有业务流程编排的开发态工具及基于业务流程本体的功能性测试,在业务流程的运行中,中间过程中的上下文的正确无法检测和查询,只能等待整体流程运行结束,得到最终结果查看,因此其仍存在执行的中间过程无法监测到业务流程执行错误与否的问题,并且调试过程需要具有一定编码基础的专业开发人员,所需技术门槛较高。
技术实现思路
1、本公开实施例至少提供一种业务流程的调试方法、装置、电子设备及存储介质,可以在业务流程调试中关注到中间运行结果,实现在业务流程的运行状态下进行执行阻塞并返回可编辑修改的上下文信息,同时不需要专业开发人员也可以进行业务流程调试工作,所需技术门槛较低。
2、本公开实施例提供了一种业务流程的调试方法,包括:
3、获取目标业务流程,确定所述目标业务流程对应的节点组件;
4、在每个所述节点组件的执行步骤前,插入对应的停顿代码;
5、响应于用户针对所述节点组件的筛选操作,确定目标调试节点,并触发所述目标
6、针对每个所述代码断点,确定所述目标业务流程执行至该代码断点对应的流程上下文信息;
7、响应于用户针对所述流程上下文信息的修改操作,将修改后的所述流程上下文信息更新至对应的所述节点组件。
8、一种可选的实施方式中,所述获取目标业务流程,确定所述目标业务流程对应的节点组件,具体包括:
9、响应于用户在预设的调试面板的调试触发操作,通过预设的代理服务部件,在预设类库中查询携带有每个业务流程对应jvm进程的jvm列表;
10、通过所述预设调试面板向用户展示所述jvm列表,响应于用户针对所述jvm列表中所述jvm进程的选择操作,确定目标jvm进程;
11、将所述目标jvm进程对应的业务流程确定为所述目标业务流程;
12、关联所述目标jvm进程与当前调试,确定所述目标jvm进程包括的所述节点组件。
13、一种可选的实施方式中,所述针在每个所述节点组件的执行步骤前,插入对应的停顿代码,具体包括:
14、通过所述代理服务部件,在javaagent的transform类中,通过javassist字节码编译停顿插入逻辑;
15、通过所述目标jvm进程中包括的预设执行单元执行所述停顿插入逻辑,在每个所述节点组件的执行步骤前插入对应的所述停顿代码;
16、其中,所述停顿代码包括中断所述jvm进程执行的代码断点状态,以及允许所述jvm进程正常执行的代码执行状态。
17、一种可选的实施方式中,所述响应于用户针对所述节点组件的筛选操作,确定目标调试节点,并触发所述目标调试节点对应的所述停顿代码为代码断点,具体包括:
18、通过所述调试面板展示包含全部所述节点组件的组件列表;
19、响应于用户针对所述组件列表中,所述节点组件的选择操作,确定业务流程中需要进行中断调试的所述目标调试节点;
20、在所述目标jvm进程中,针对每个所述目标调试节点,将该目标调试节点对应的所述停顿代码触发为所述代码断点;
21、通过所述代理服务部件将触发断点后的所述目标jvm进程反馈至所述调试面板。
22、一种可选的实施方式中,针对每个所述代码断点,确定所述目标业务流程执行至该代码断点对应的流程上下文信息,具体包括:
23、根据所述目标业务流程依次执行所述节点组件,并在对应所述代码断点的所述目标调试节点处中断执行;
24、确定执行所述目标业务流程至所述目标调试节点处的执行结果集,将所述执行结果集确定为所述流程上下文信息;
25、通过所述代理服务部件将所述流程上下文信息反馈至所述预设调试面板。
26、一种可选的实施方式中,所述响应于用户针对所述流程上下文信息的修改操作,将修改后的所述流程上下文信息更新至对应的所述节点组件,具体包括:
27、响应于用户在所述调试面板中,针对所述流程上下文信息的修改操作,确定流程调试信息;
28、通过所述代理服务部件将所述流程调试信息转发至正在执行的所述目标jvm进程对应的流程引擎;
29、在所述目标业务流程的执行过程中,根据所述流程调试信息实时更新所述目标jvm进程。
30、一种可选的实施方式中,在响应于用户针对所述流程上下文信息的修改操作,将修改后的所述流程上下文信息更新至对应的所述节点组件之后,所述方法还包括:
31、响应于用户的调试终止操作,撤销所述停顿代码,将所述目标业务流程恢复至停顿插入前的基础状态。
32、本公开实施例还提供一种业务流程的调试装置,包括:
33、流程关联模块,用于获取目标业务流程,确定所述目标业务流程对应的节点组件;
34、停顿插入模块,用于在每个所述节点组件的执行步骤前,插入对应的停顿代码;
35、断点设置模块,用于响应于用户针对所述节点组件的筛选操作,确定目标调试节点,并触发所述目标调试节点对应的所述停顿代码为代码断点;
36、上下文信息确定模块,用于针对每个所述代码断点,确定所述目标业务流程执行至该代码断点对应的流程上下文信息;
37、流程更新模块,用于响应于用户针对所述流程上下文信息的修改操作,将修改后的所述流程上下文信息更新至对应的所述节点组件。
38、本公开实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述业务流程的调试方法,或上述业务流程的调试方法中任一种可能的实施方式中的步骤。
39、本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述业务流程的调试方法,或上述业务流程的调试方法中任一种可能的实施方式中的步骤。
40、本公开实施例还提供一种计算机程序产品,包括计算机程序/指令,该计算机程序、指令被处理器执行时实现上述业务流程的调试方法,或上述业务流程的调试方法中任一种可能的实施方式中的步骤。
41、本公开实施例提供的一种业务流程的调试方法、装置、电子设备及存储介质,通过获取目标业务流程,确定所述目标业务流程对应的节点组件;在每个所述节点组本文档来自技高网...
【技术保护点】
1.一种业务流程的调试方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述获取目标业务流程,确定所述目标业务流程对应的节点组件,具体包括:
3.根据权利要求2所述的方法,其特征在于,所述针在每个所述节点组件的执行步骤前,插入对应的停顿代码,具体包括:
4.根据权利要求2所述的方法,其特征在于,所述响应于用户针对所述节点组件的筛选操作,确定目标调试节点,并触发所述目标调试节点对应的所述停顿代码为代码断点,具体包括:
5.根据权利要求2所述的方法,其特征在于,针对每个所述代码断点,确定所述目标业务流程执行至该代码断点对应的流程上下文信息,具体包括:
6.根据权利要求2所述的方法,其特征在于,所述响应于用户针对所述流程上下文信息的修改操作,将修改后的所述流程上下文信息更新至对应的所述节点组件,具体包括:
7.根据权利要求1所述的方法,其特征在于,在响应于用户针对所述流程上下文信息的修改操作,将修改后的所述流程上下文信息更新至对应的所述节点组件之后,所述方法还包括:
8.一种业务流程的
9.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至6中任一项所述的业务流程的调试方法的步骤。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至7中任一项所述的业务流程的调试方法的步骤。
...【技术特征摘要】
1.一种业务流程的调试方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述获取目标业务流程,确定所述目标业务流程对应的节点组件,具体包括:
3.根据权利要求2所述的方法,其特征在于,所述针在每个所述节点组件的执行步骤前,插入对应的停顿代码,具体包括:
4.根据权利要求2所述的方法,其特征在于,所述响应于用户针对所述节点组件的筛选操作,确定目标调试节点,并触发所述目标调试节点对应的所述停顿代码为代码断点,具体包括:
5.根据权利要求2所述的方法,其特征在于,针对每个所述代码断点,确定所述目标业务流程执行至该代码断点对应的流程上下文信息,具体包括:
6.根据权利要求2所述的方法,其特征在于,所述响应于用户针对所述流程上下文信息的修改操作,将修改后的所述流...
【专利技术属性】
技术研发人员:修宾彬,邵伏巧,
申请(专利权)人:北京领雁科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。