掌桥专利:专业的专利平台
掌桥专利
首页

一种基于低代码平台的调试方法、系统及装置

文献发布时间:2023-06-19 18:27:32


一种基于低代码平台的调试方法、系统及装置

技术领域

本发明涉及开发调试技术领域,尤其涉及一种基于低代码平台的调试方法、系统及装置。

背景技术

低代码开发平台将低代码技术引入高复杂度、大规模、高价值的企业级应用开发领域,帮助专业开发者、IT技术人员和业务人员构建面向未来的个性化应用。在低代码平台上可以根据不同企业的管理实情和工作流程,搭建不同的企业管理软件。

现有低代码平台是把结构化数据抽象出页面,低代码开发平台的用户需要使用命令来实现功能逻辑,但是命令的执行过程,对于用户来说是非透明的。用户在设计实现过程中需要反复测试结果才能知道设计的过程是否满足功能需求。

为了满足用户反复测试需求,现有低代码开发平台提供命令执行的信息,按时间顺序记录并提供给用户。低代码开发平台的用户测试都对用户自身提出很高要求,具体为:用户在分析信息的时候,由于采集时间顺序记录命令执行信息,对于命令系统的逻辑描述不完善,很难快速筛选出自己关注的信息。

为了在用户分析信息时快速筛选自己关注的信息,需要针对按时间顺序记录并提供给用户做进一步优化。

发明内容

本发明提供了一种基于低代码平台的调试方法、系统及装置,采集低代码平台命令系统的日志信息,使得调试时拥有足够的信息,借助树形结构格式化日志信息,方便调试时理解命令的逻辑关系,低代码平台折叠日志信息,方便开发人员快速查找自己关心的日志信息,从而达到帮助使用低代码开发平台的开发者提高调试效率,快速定位出开发异常,快速找到开发异常对应的日志信息,提高调试效率,降低调试成本。

实现本发明目的的技术方案如下:

一方面,提供一种基于低代码平台的调试方法,包括:

低代码平台实时获取开发应用的命令系统并逐一生成日志信息;

低代码平台根据命令系统的层级关系格式化所述日志信息;

开发应用调试过程中在低代码平台对应的浏览器通过所述日志信息追踪开发异常;

折叠所述日志信息快速查找对应所述开发异常的日志信息。

本发明采集低代码平台命令系统的日志信息,使得调试时拥有足够的信息,借助树形结构格式化日志信息,方便调试时理解命令的逻辑关系,低代码平台折叠日志信息,方便开发人员快速查找自己关心的日志信息,从而达到帮助使用低代码开发平台的开发者提高调试效率,快速定位出开发异常,快速找到开发异常对应的日志信息, 提高调试效率,降低调试成本。

基于一方面,在一种可能的实现方式中,所述低代码平台实时获取开发应用的命令系统并逐一生成日志信息,包括:

低代码平台获取每个命令的执行信息;

低代码平台逐一调取每个命令的执行信息对应日志信息;

低代码平台根据日志信息获取命令在整个命令系统的层级关系;

低代码平台根据层级关系输出日志信息。

基于一方面,在一种可能的实现方式中,所述低代码平台根据命令系统的层级关系格式化所述日志信息,包括:

低代码平台根据整个命令系统的父子关系执行所述执行信息;

低代码平台根据整个命令系统的父子关系维护执行信息的层级关系。

基于一方面,在一种可能的实现方式中,所述根据整个命令系统的父子关系执行所述执行信息,包括:

步骤11、获取整个命令系统的所有命令;

步骤12、遍历命令并执行命令,执行命令过程中根据命令层级记录命令的执行信息;

步骤13、判断所有命令是否执行完成,未执行完成则继续执行命令直至结束遍历命令;执行命令时存在未执行完的父级命令则获取父级未执行命令并层级关系减一继续遍历命令,执行命令时存在未执行完的子级命令则获取子级未执行完命令并层级关系加一继续遍历命令。

基于一方面,在一种可能的实现方式中,所述根据整个命令系统的父子关系维护执行信息,包括:

步骤21、逐一获取步骤11至步骤13的命令执行日志信息;

步骤22、逐一获取每条日志信息对应的层级数;

步骤23、根据层级数给日志信息前端添加空格,其中每条日志信息前添加的空格数量对应该条日志信息的层级数;

步骤24、判断末尾的日志信息层级数-1是否为零,(1)若不为零则核对遍历命令是否结束,若未结束则继续给日志信息前端添加空格,若已结束则核对所有日志信息的父子关系和层级关系直至所有日志信息匹配所有命令;(2)若为零则结束遍历命令和维护层级关系。

基于一方面,在一种可能的实现方式中,所述低代码平台根据命令系统的层级关系格式化所述日志信息,还包括:

逐一把每个命令输出的日志信息格式化;

调取每个命令对应的命令逻辑层级关系;

获取每个命令输出的日志信息;

采用日志信息前端添加空格的方式对应命令逻辑层级关系格式化日志信息;

根据低代码平台中服务端命令模块的命令逻辑层级关系,逐一在低代码平台的浏览器借助API接口格式化每个命令输出的日志信息。

基于一方面,在一种可能的实现方式中,所述开发应用调试过程中在低代码平台对应的浏览器通过所述日志信息追踪开发异常,包括:

采用树形结构算法在低代码平台对应的浏览器将所述日志信息转化成树形结构;

按照树形结构的先序遍历即输出日志;

根据输出日志查找开发应用的命令系统异常情况。

在实际应用中,本发明的树形结构算法主要是把命令生成的带缩进关系的日志信息转化为一棵树,方便后续的代码输出渲染。树形结构算法过程包括:获取命令执行的所有log,按行遍历log,判断是否遍历结束,(1)若未结束则获取当前日志信息的层级(根据缩进的空格数来确定),判断层级是否为0,若层级为0则把当前日志信息放到字典中,继续按行遍历log;若层级不为0则从字典表中找到上一级日志信息的对象,把当前日志信息添加到上级日志信息的子集合中,把当前日志信息放到字典中,继续按行遍历log直至遍历结束。(2)若已结束则完成输出日志。本发明中字典,是一个键值对,Key Value.通过Key可以快速找到Value。在该算法中Key是层级,Value是Log的树形节点。

本发明中的先序遍历是按照根左右的顺序沿一定路径经过路径上所有的结点。即首先访问根结点然后遍历左子树,最后遍历右子树。在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树,如果二叉树为空则返回。

基于一方面,在一种可能的实现方式中,所述折叠所述日志信息快速查找对应所述开发异常的日志信息,包括:

开发应用过程中调取后端服务器的服务端命令模块,

将低代码平台中服务端命令模块的命令系统生成日志信息;

在低代码平台触发运行模块、开发应用跳转至低代码平台对应的浏览器输出日志信息;

根据所有日志信息的树形结构折叠子命令对应日志信息,方便快速查找对应所述开发异常的日志信息。

另一方面,提供一种基于低代码平台的调试系统,包括低代码平台、后端服务器和浏览器,所述低代码平台与后端服务器相连,所述低代码平台调取所述后端服务器的数据,所述浏览器和所述低代码平台相连,所述浏览器运行所述低代码平台开发的开发应用;

所述低代码平台实时获取开发应用的命令系统并逐一生成日志信息;所述低代码平台根据命令系统的层级关系格式化所述日志信息;

所述低代码平台调试开发应用,所述浏览器将所述日志信息输出成树形结构,所述浏览器通过所述日志信息追踪开发异常。

再一方面,提供一种基于低代码平台的调试装置,包括第一终端、服务器和第二终端,第一终端运行有低代码平台,第二终端运行有浏览器;

所述低代码平台与后端服务器相连,所述低代码平台调取所述后端服务器的数据,所述浏览器和所述低代码平台相连,所述浏览器运行所述低代码平台开发的开发应用;

所述低代码平台实时获取开发应用的命令系统并逐一生成日志信息;所述低代码平台根据命令系统的层级关系格式化所述日志信息;

所述低代码平台调试开发应用,所述浏览器将所述日志信息输出成树形结构,所述浏览器通过所述日志信息追踪开发异常。

与现有技术相比,本发明的有益效果是:

本发明采集低代码平台命令系统的日志信息,使得调试时拥有足够的信息,借助树形结构格式化日志信息,方便调试时理解命令的逻辑关系,低代码平台折叠日志信息,方便开发人员快速查找自己关心的日志信息,从而达到帮助使用低代码开发平台的开发者提高调试效率,快速定位出开发异常,快速找到开发异常对应的日志信息,提高调试效率,降低调试成本。

附图说明

图1为本发明提供的一种低代码平台的调试方法流程图;

图2为本发明提供的命令系统的层级关系示意图;

图3为本发明提供的日志信息生成过程图示;

图4为本发明提供的日志信息的格式化过程图示;

图5为本发明提供的树形结构转化图示。

具体实施方式

下面结合附图所示的各实施方式对本发明进行详细说明,但应当说明的是,这些实施方式并非对本发明的限制,本领域普通技术人员根据这些实施方式所作的功能、方法、或者结构上的等效变换或替代,均属于本发明的保护范围之内。

请参阅图1,本发明实施例提供一种低代码平台的调试方法,包括:低代码平台实时获取开发应用的命令系统并逐一生成日志信息;低代码平台根据命令系统的层级关系格式化日志信息;开发应用调试过程中在低代码平台对应的浏览器通过日志信息追踪开发异常;折叠日志信息快速查找对应开发异常的日志信息。

本发明采集低代码平台命令系统的日志信息,使得调试时拥有足够的信息,借助树形结构格式化日志信息,方便调试时理解命令的逻辑关系,低代码平台折叠日志信息,方便开发人员快速查找自己关心的日志信息,从而达到帮助使用低代码开发平台的开发者提高调试效率,快速定位出开发异常,快速找到开发异常对应的日志信息,提高调试效率,降低调试成本。

基于上述一种低代码平台的调试方法,低代码平台实时获取开发应用的命令系统并逐一生成日志信息,包括:低代码平台获取每个命令的执行信息;低代码平台逐一调取每个命令的执行信息对应日志信息;低代码平台根据日志信息获取命令在整个命令系统的层级关系;低代码平台根据层级关系输出日志信息。

基于上述一种低代码平台的调试方法,低代码平台根据命令系统的层级关系格式化日志信息,包括:低代码平台根据整个命令系统的父子关系执行执行信息;低代码平台根据整个命令系统的父子关系维护执行信息的层级关系。

基于上述一种低代码平台的调试方法,根据整个命令系统的父子关系执行执行信息,包括:步骤11、获取整个命令系统的所有命令;步骤12、遍历命令并执行命令,执行命令过程中根据命令层级记录命令的执行信息;步骤13、判断所有命令是否执行完成,未执行完成则继续执行命令直至结束遍历命令;执行命令时存在未执行完的父级命令则获取父级未执行命令并层级关系减一继续遍历命令,执行命令时存在未执行完的子级命令则获取子级未执行完命令并层级关系加一继续遍历命令。

基于上述一种低代码平台的调试方法,请参阅图4,根据整个命令系统的父子关系维护执行信息,包括:步骤21、逐一获取步骤11至步骤13的命令执行日志信息;步骤22、逐一获取每条日志信息对应的层级数;步骤23、根据层级数给日志信息前端添加空格,其中每条日志信息前添加的空格数量对应该条日志信息的层级数;步骤24、判断末尾的日志信息层级数-1是否为零,(1)若不为零则核对遍历命令是否结束,若未结束则继续给日志信息前端添加空格,若已结束则核对所有日志信息的父子关系和层级关系直至所有日志信息匹配所有命令;(2)若为零则结束遍历命令和维护层级关系。

基于上述一种低代码平台的调试方法,低代码平台根据命令系统的层级关系格式化日志信息,还包括:逐一把每个命令输出的日志信息格式化;调取每个命令对应的命令逻辑层级关系;获取每个命令输出的日志信息;采用日志信息前端添加空格的方式对应命令逻辑层级关系格式化日志信息;根据低代码平台中服务端命令模块的命令逻辑层级关系,逐一在低代码平台的浏览器借助API接口格式化每个命令输出的日志信息。

基于上述一种低代码平台的调试方法,开发应用调试过程中在低代码平台对应的浏览器通过日志信息追踪开发异常,包括:采用树形结构算法在低代码平台对应的浏览器将日志信息转化成树形结构;按照树形结构的先序遍历即输出日志;根据输出日志查找开发应用的命令系统异常情况。

在实际应用中,请参阅图5,本发明的树形结构算法主要是把命令生成的带缩进关系的日志信息转化为一棵树,方便后续的代码输出渲染。树形结构算法过程包括:获取命令执行的所有log,按行遍历log,判断是否遍历结束,(1)若未结束则获取当前日志信息的层级(根据缩进的空格数来确定),判断层级是否为0,若层级为0则把当前日志信息放到字典中,继续按行遍历log;若层级不为0则从字典表中找到上一级日志信息的对象,把当前日志信息添加到上级日志信息的子集合中,把当前日志信息放到字典中,继续按行遍历log直至遍历结束。(2)若已结束则完成输出日志。本发明中字典,是一个键值对,Key Value.通过Key可以快速找到Value。在该算法中Key是层级,Value是Log的树形节点。

本发明中的先序遍历是按照根左右的顺序沿一定路径经过路径上所有的结点。即首先访问根结点然后遍历左子树,最后遍历右子树。在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树,如果二叉树为空则返回。

基于上述一种低代码平台的调试方法,折叠日志信息快速查找对应开发异常的日志信息,包括:开发应用过程中调取后端服务器的服务端命令模块,将低代码平台中服务端命令模块的命令系统生成日志信息;在低代码平台触发运行模块、开发应用跳转至低代码平台对应的浏览器输出日志信息;根据所有日志信息的树形结构折叠子命令对应日志信息,方便快速查找对应开发异常的日志信息。

另外,本发明实施例还提供了一种低代码平台的调试系统,包括低代码平台、后端服务器和浏览器,低代码平台与后端服务器相连,低代码平台调取后端服务器的数据,浏览器和低代码平台相连,浏览器运行低代码平台开发的开发应用;

低代码平台实时获取开发应用的命令系统并逐一生成日志信息;低代码平台根据命令系统的层级关系格式化日志信息;低代码平台调试开发应用,浏览器将日志信息输出成树形结构,浏览器通过日志信息追踪开发异常。

此外,本发明实施例还提供了一种低代码平台的调试装置,包括第一终端、服务器和第二终端,第一终端运行有低代码平台,第二终端运行有浏览器;低代码平台与后端服务器相连,低代码平台调取后端服务器的数据,浏览器和低代码平台相连,浏览器运行低代码平台开发的开发应用;低代码平台实时获取开发应用的命令系统并逐一生成日志信息;低代码平台根据命令系统的层级关系格式化日志信息;低代码平台调试开发应用,浏览器将日志信息输出成树形结构,浏览器通过日志信息追踪开发异常。

需要说明的是,在实际应用中,本发明实施例在描述如何对日志信息进行格式化和渲染之前,先说明:(1)低代码平台的命令系统中有什么样的层级关系,会对日志的格式化有什么影响;(2)如何通过浏览器提供的API输出具有树形结构的代码作为日志信息。

针对本发明实施例的调试方法,列举实例如下:命令系统的层级关系如图2所示,图2中有一些命令是有父子关系的,比如图2的条件命令,根据条件不同的结果,执行不同的子命令。更进一步的,图2中条件命令的结果为采购数大于0时执行返回命令且设置变量命令为销售数;图2中条件命令的结果为销售数大于0时执行返回命令且设置变量命令为出入库数;图2中条件命令的结果为出入库数大于0时执行返回命令且设置变量命令为盘点数;图2中条件命令的结果为盘点数大于0时执行返回命令且数据表操作:删除供应商客户物品相关表、删除物品表。

根据以上命令系统的层级关系,期望格式化日志信息如下:

执行点击命令 物品_库存!V6 用时:4742毫秒

条件 用时:4737毫秒

确认对话框:确定

删除物品用时:353毫秒

16:12执行“删除物品”命令,请求方式:POST,用户:库存管理员1

参数:

物品ID=1

事务命令 用时:73毫秒。

检查是否盘点中用时:47毫秒。

设置变量命令:盘点中数量用时:16毫秒。

SELECT COUNT(*)FROM 盘点表 WHERE[是否结束]= False

创建变量 盘点中数量= 0

条件用时:28毫秒。

判断:=盘点中数量 大于 0 结果为False

设置变量命令:错误信息用时:0毫秒。

创建变量错误信息=已选物品已被采购/销售/出入库单/盘点单包含,请先将这些单据中对应的物品删除

设置变量命令:采购数 用时:5毫秒。

SELECT COUNT(*)FROM 采购订单详情表 WHERE[物品ID]= 1

创建变量采购数= 12

条件用时:1毫秒。

判断:=采购数 大于 0 结果为True

返回命令 用时:1毫秒。

发生错误,回滚事务

错误码:1

信息:已选物品已被采购/销售/出入库单/盘点单包含,请先将这些单据中对应的物品删除。

“删除物品”命令执行结束,用时:135毫秒。

条件用时:3335毫秒

判断:=BW19 不等于 0 结果为 true 用时:3315毫秒

本发明实施例使用浏览器的API接口进行最终日志信息的输出,本发明实施例使用一系列方法对日志信息进行格式化。使用浏览器的API接口,选用Console.group语法或console.groupCollapsed语法在浏览器的控制台上创建一个新分组。随后输出到控制台上的内容都会被添加缩进,表示该内容属于当前分组,直到调用console.groupEnd()语法之后,当前分组结束console.groupEnd()在浏览器控制台中退出一格缩进 (结束分组)。

本发明实施例的核心是以下几个部分:(1)日志信息生成;(2)日志信息格式化;(3)浏览器中输出日志信息。其中,图3所示为日志信息的生成过程,图3表明命令是如何根据父子关系进行执行的,同时如何维护层级关系。请参阅图3,获取所有命令,遍历命令,遍历命令过程中判断所有命令是否执行完成,【情况1】若执行完成则判断是否有父命令未执行完,若父命令已执行完,则结束本次遍历;若父命令未执行完,则获取未执行完的父命令,层级减一继续遍历命令。【情况2】若所有命令未执行完成则继续执行命令,并且在执行命令过程中根据层级记录命令执行并log,在此过程中判断执行命令时是否有子命令,若没有子命令则层级不变继续遍历命令,若有子命令则获取子命令并层级加一继续遍历命令。

本发明实施例在记录日志信息的缩进关系时,本专利使用的是空格字符,这里可以使用任何有效的方式表述缩紧关系。例如可以换成任何其他被赋予意义的字符,或者其他的结构。本发明实施例假设命令的执行先行完成,日志信息生成完毕之后,才进行输出渲染。因此,本发明实施例可以结合生成日志和输出渲染的部分,把逻辑合在一起简化过程。但合成在一起后,适用范围会下降。

本发明实施例根据命令逻辑的父子层级关系,把每个命令输出的信息进行格式化,通过分组,缩进的方式把日志整理成树状,代码块的结构,从而方便用户进行分析。树状结构的日志有以下优点:清晰的逻辑关系,更容易分析和调试。可以像是折叠代码块一样,操作日志信息,可以快速搜索或者跳转到所需的信息。本发明实施例是通过对低代码平台生成的日志信息进行格式化,使用JS的api在浏览器的开发者工具中,渲染显示日志信息。最终达到解决问题,方便用户调试的结果。

本发明实施例的调试方法可以有效的将日志信息输出为格式化后的元数据。在通过树形结构的转化,最终输出在对应的平台上。相比现有调试方法,本发明实施例首先输出了所有命令的日志信息,使得调试时拥有足够的信息。同时借助树形结构,格式化信息,方便调试时理解命令的逻辑关系,在一些适合的平台上(如Chrome或Edge浏览器的开发者工具),可以折叠日志信息,快速查找自己关心的日志信息。从而达到帮助使用低代码开发平台的用户,提高调试效率,降低调试成本的目的。

上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

技术分类

06120115570950