速成班101
10 模块
5 周数

日志

点击复制

使用日志进行应用程序故障排除


在开发过程中,经常出现应用程序的实际结果与预期结果不一致的情况。即使是只有少量块的简单业务流程,识别错误也是很困难的,对于大型项目来说,使用额外的故障排除工具是必须的。

在本模块中,我们将处理应用程序的调试问题,也就是在开发阶段检测、定位和消除错误。

查找错误的最基本工具是使用日志,也就是形成某些条目以便进一步分析。让我们以第四模块中创建的 "Basic functions" 业务流程为例来看看。

该业务流程的目的是获得两个数字,对它们进行某些数学运算。假设我们想在这个过程中检查一些东西,而不是只关注最终的结果(或没有结果)。

我们用日志来确保。

  • 业务流程真的开始了
  • Round块接收正确的值作为输入
  • 业务流程结束前数组的元素数量符合我们的预期(5个)

Write to Log 块

要做到这一点,我们将稍微改变业务流程本身,并在其中添加 Write to Log块,顾名思义,它们将把信息写入日志。

我们使用第一个 Write to Log块位于业务流程的开始。它可以接受两个参数作为输入。 Label(用于条目的标题)和 Input(条目本身)。在这种情况下,我们记录了开始一个业务流程的事实,所以没有必要从一些单独的来源转移参数。只要指定确认文本就足够了。因此,我们将写入文本 "Basic functions BP start" 作为输入。

下一个日志条目将在 Round块之前进行。而在这种情况下,记录将不再被固定。输入将收到一个带有除法结果的值,未来必须对其进行舍入操作。好消息是 Write to Log可以接受任何类型的值作为 Input(在这种情况下,它将是Float ),而且不需要转换为String 来写入。

最后,你需要写下数组中元素的数量。但要做到这一点,你需要找到这个数量,因为我们有数组本身,而不是它的大小。因此,除了 Write to Log,我们将使用 Array Size块。


后台日志

之后,你可以发布应用程序,运行业务流程,并看到结果。转到 CI/CD选项卡中的 Application Logs部分来做这件事。

的条目 bp_log栏中的 Source栏中的条目意味着该条目是由于 Write to Log块。我们可以确保业务流程的正常运行,以及日志确实被写入。此外,在这里你可以看到各种系统日志,例如,端点结果被成功接收(Status: 200),从哪个IP地址发起,使用了什么参数。

前台日志

在创建前台时,也可以看到一个相同名称的块(Write to Log)在创建前端业务流程时也可以看到。让我们把它用在 Y值输入字段。让我们写下关于什么值被输入(Input: Value = )和哪个组件(Label: Y log : )的信息。

在这种情况下,该块将完全在前端工作。没有请求将被发送到服务器;相应地,这个块的结果将不会出现在服务器日志中。一个合乎逻辑的问题出现了--那么,在哪里寻找它们呢?

要做到这一点,你需要打开 Developer Tools在浏览器中。启动方法和名称本身可能略有不同,这取决于所使用的浏览器,但主要的是任何现代浏览器都支持这一功能,而且一般的操作原则是相同的。

在我们的例子中,将使用 Google Chrome浏览器将被使用。要启用开发者工具,你可以使用设置中的相应菜单项(More tools -> Developer tools ),键盘快捷键 Ctrl + Shift + I,或者直接按 F12.这里有许多不同的功能,如查看网页的HTML代码、跟踪网络请求等等。但目前,我们感兴趣的是 Console部分。它允许你跟踪JavaScript工作的结果,诊断前端的错误,在控制台中,你可以看到由 Write to Log块的记录。

我们在Y输入框中输入了数字 "4",并确保了 Write to Log按计划工作。在控制台中出现了一个条目 "Y log: Value = 4"。

Was this article helpful?
还在寻找答案吗?
加入社区