基于触发器运转记录的流程异常处理方法及存储介质技术

技术编号:32972404 阅读:14 留言:0更新日期:2022-04-09 11:41
本发明专利技术涉及一种基于触发器运转记录的流程异常处理方法及存储介质,包括:触发器被触发时生成触发器运行日志;顺序执行触发器各节点的动作;判断正在执行的节点是否出现执行异常,如果出现执行异常,则执行异常处理机制,所述异常处理机制包括中止运行机制和继续运行机制;如果未出现执行异常,则记录该节点的运行数据,并写入触发器运行日志。本发明专利技术中,通过设置异常处理机制和中止运行机制,企业管理员可自行监控触发器运行情况,方便进行触发器配置时调试,以及在后续问题的排查,中止后可重跑,可减少由于各类系统或者业务异常对客户数据的影响,尽可能保证功能的完整和数据的一致性。性。性。

【技术实现步骤摘要】
基于触发器运转记录的流程异常处理方法及存储介质


[0001]本专利技术属于工业互联网
,涉及一种基于触发器运转记录的流程异常处理方法及存储介质。

技术介绍

[0002]工业互联网平台就是把设备、生产线、工厂、供应商、产品和客户紧密地连接融合起来,帮助企业优化业务流程或者管理流程。在工业互联网平台向客户提供服务时,往往需要贯通企业的多种单据、流程、硬件、外部软件系统。当这样的贯通过程在传统开发模式下往往需要编写大量的业务代码来实现,但作为提供服务的Saas平台来说,在面对不同行业、不同规模的企业时,这样的诉求往往都具有差异,因此支持从页面上进行数据流转配置和业务编排的触发器应运而生。
[0003]在传统开发方式下,代码的运行过程会通过添加大量的日志来记录,在出现问题时需要对日志进行相应的排查,并且无法对失败的业务流转再次进行的处理。通过采用基于节点的可视化配置方式可以实现用户自行配置触发器,而在用户自行配置的触发器中,同样需要支持用户对于运行过程进行详细监控,并且在出现问题时能够及时通知到系统管理员或其他相关人员,能够对数据或者触发器进行处理,使失败的流程可以再次进行运转。

技术实现思路

[0004]有鉴于此,本专利技术的目的在于提供一种能够减少异常的持续时间及对终端用户影响的基于触发器运转记录的流程异常处理方法及存储介质。
[0005]为达到上述目的,本专利技术提供如下技术方案:
[0006]一种基于触发器运转记录的流程异常处理方法,所述触发器由多个执行预置动作的节点以可视化方式按照父子关系逐级指向配置而成,所述流程异常处理方法包括以下步骤:
[0007]S1、检测触发器的触发动作,基于触发动作生成触发器运行日志,并按照所述父子关系顺序执行触发器各节点的动作;
[0008]S2、判断正在执行的节点是否出现执行异常;
[0009]S3、若出现执行异常,则执行异常处理机制;其中,所述异常处理机制包括中止运行机制和继续运行机制;所述继续运行机制用于当节点出现执行异常时,结束当前节点的动作并继续运行触发器的下一节点;所述中止运行机制用于当节点出现执行异常时,将内存中的节点运行数据存入数据库中,根据需要执行重跑机制;并将异常数据写入所述触发器运行日志中;
[0010]S4、若未出现执行异常,则视为该节点执行成功,在内存中记录该节点的运行数据,并在触发器运行日志中写入该节点的节点日志。
[0011]进一步的,所述触发器运行日志包括生成触发器时为触发器分配的触发器ID、本次触发的开始时间、本次触发的结束时间、本次触发器所属的租户ID、产生本次触发的租户
下的用户id、触发器运行结果、异常原因以及触发过程中各节点的节点日志;
[0012]所述节点日志包括生成触发器时为节点分配的节点ID、生成触发器时为节点设置的节点名称、节点执行情况、节点类型、开始执行该节点的时间、停止执行该节点的时间和该节点的运行数据。
[0013]进一步的,所述触发器的每一个节点均设置有独立的节点ID,在触发器被触发时,在内存中创建一个list用于记录每一被执行节点的运行数据,在触发器运行过程中,每执行一个节点,均将所述节点的运行数据写入list中,并将list中新增的所述运行数据写入触发器运行日志;list中每个节点的数据是一个key

value结构的map,其中key是对应节点的节点ID,value为该节点的运行数据,当触发器的运行结束时,对应的list自动删除。
[0014]进一步的,在S3步骤中,所述中止运行机制还用于执行以下步骤:
[0015]S301、在数据库新建一个触发器运行时上下文,将list中的节点运行数据写入触发器运行时上下文;
[0016]S302、停止触发器的运行,并从内存中删除触发器对应的list;
[0017]S303、根据需求确定是否需要从中止的节点继续运行触发器,若需要从中止的节点继续运行触发器,则在内存中新建一个list,将触发器运行时上下文的数据写入list中,并从中止的节点开始继续运行触发器。
[0018]进一步的,在执行所述S2步骤之前,先执行以下步骤:
[0019]S2'、判断正在执行的节点是否为被允许的正常中止状态,如果是被允许的正常中止状态,则执行S301~S303步骤;否则,执行S2步骤。
[0020]进一步的,所述S2步骤中:
[0021]所述执行异常包括触发器全局执行异常和各节点类型的节点执行异常;
[0022]所述S3步骤中:
[0023]所述异常处理机制包括全局异常处理机制和各节点的节点异常处理机制;当出现触发器全局执行异常时,执行全局异常处理机制;当出现节点执行异常时,执行该节点的节点异常处理机制。
[0024]进一步的,所述全局异常处理机制包括:
[0025]中止运行机制;
[0026]继续运行机制;
[0027]节点重复执行机制,基于预先配置的重复执行次数,重复执行所述节点;若重复执行次数到达预设的重复执行次数时且仍然处于全局执行异常状态时,根据需求转入所述中止运行机制或者继续运行机制;
[0028]异常通知机制,用于当执行中止运行机制时,根据需求发送异常通知,其中,所述异常通知按照预先设定的通知对象、异常通知内容、异常通知方式发送至异常通知对象。
[0029]进一步的,所述节点异常处理机制包括:
[0030]中止运行机制;
[0031]继续运行机制;
[0032]自定义的运行机制,用于在出现节点异常后先执行自定义的动作,之后再重新执行该节点;
[0033]异常通知机制,用于当执行中止运行机制时,根据需求发送异常通知,其中,所述
异常通知按照预先设定的通知对象、异常通知内容、异常通知方式发送至异常通知对象。
[0034]进一步的,还包括S5、对所述触发器运行日志进行解析,并以可视化的方式展示触发器运行情况和各节点的运行数据,本步骤包括以下子步骤:
[0035]S501、根据触发器运行日志中的触发器ID获取对应触发器的详细配置,并以可视化的方式在画布上展示该触发器的节点配置;
[0036]S502、从触发器运行日志中依次取出各节点的运行数据,并将各节点的数据通过节点ID匹配到画布上对应的节点中;
[0037]S503、当鼠标hover到可视画布的节点时,根据节点的数据判断该节点在触发器运行时是否运行成功,如果该节点运行成功在节点上层浮现弹窗,根据节点的数据在弹窗中展示该节点触发的详细情况;如果判断该节点未运行成功,或是该节点没有数据,则不作响应。
[0038]一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现基于触发器运转记录的流程异常处理方法。
[0039]本专利技术中,通过以可视化的方式配置触发器,在内存中存储触发器各节点的运行数据,在数据库中生成触发器运行日志记录触发器的运行情本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于触发器运转记录的流程异常处理方法,其特征在于,所述触发器由多个执行预置动作的节点以可视化方式按照父子关系逐级指向配置而成,所述流程异常处理方法包括以下步骤:S1、检测触发器的触发动作,基于触发动作生成触发器运行日志,并按照所述父子关系顺序执行触发器各节点的动作;S2、判断正在执行的节点是否出现执行异常;S3、若出现执行异常,则执行异常处理机制;其中,所述异常处理机制包括中止运行机制和继续运行机制;所述继续运行机制用于当节点出现执行异常时,结束当前节点的动作并继续运行触发器的下一节点;所述中止运行机制用于当节点出现执行异常时,将内存中的节点运行数据存入数据库中,根据需要执行重跑机制;并将异常数据写入所述触发器运行日志中;S4、若未出现执行异常,则视为该节点执行成功,在内存中记录该节点的运行数据,并在触发器运行日志中写入该节点的节点日志。2.根据权利要求1所述的基于触发器运转记录的流程异常处理方法,其特征在于,所述触发器运行日志包括生成触发器时为触发器分配的触发器ID、本次触发的开始时间、本次触发的结束时间、本次触发器所属的租户ID、产生本次触发的租户下的用户id、触发器运行结果、异常原因以及触发过程中各节点的节点日志;所述节点日志包括生成触发器时为节点分配的节点ID、生成触发器时为节点设置的节点名称、节点执行情况、节点类型、开始执行该节点的时间、停止执行该节点的时间和该节点的运行数据。3.根据权利要求1所述的基于触发器运转记录的流程异常处理方法,其特征在于,所述触发器的每一个节点均设置有独立的节点ID,在触发器被触发时,在内存中创建一个list用于记录每一被执行节点的运行数据,在触发器运行过程中,每执行一个节点,均将所述节点的运行数据写入list中,并将list中新增的所述运行数据写入触发器运行日志;list中每个节点的数据是一个key

value结构的map,其中key是对应节点的节点ID,value为该节点的运行数据,当触发器的运行结束时,对应的list自动删除。4.根据权利要求3所述的基于触发器运转记录的流程异常处理方法,其特征在于,在S3步骤中,所述中止运行机制还用于执行以下步骤:S301、在数据库新建一个触发器运行时上下文,将list中的节点运行数据写入触发器运行时上下文;S302、停止触发器的运行,并从内存中删除触发器对应的list;S303、根据需求确定是否需要从中止的节点继续运行触发器,若需要从中止的节点继续运行触发器,则在内存中新建一个list,将触发器运行时上下文的数据写入list中,并从中止的节点开始继续运行触发器...

【专利技术属性】
技术研发人员:张剑卿罗义曹中余黎风顺吴迪
申请(专利权)人:重庆允成互联网科技有限公司
类型:发明
国别省市:

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

1