node-red教程3.2 debug控件介绍

3.2.1 debug的说明信息

  计算机诞生没多久的时候,有一位程序媛在调试程序时出现故障,拆开继电器后,发现有只飞蛾被夹扁在触点中间,从而“卡”住了机器的运行。于是,她诙谐的把程序故障统称为“臭虫(BUG)”,把排除程序故障叫DEBUG,而这奇怪的“称呼”,后来成为计算机领域的专业行话。从而debug意为排除程序故障的意思。
  Debug控件最主要的作用,是打印出一些信息,方便程序调试。前边已经多次使用了debug控件了,相信大家对他已经不陌生了。接下来进行更加详细的介绍。
  
在debug侧栏选项卡中显示选定的消息属性,可以选择运行时日志。默认情况下,它显示消息的有效负载。
详细说明
debug侧栏提供了被发送的消息的结构化视图,使其更容易理解它们的结构。
JavaScript对象和数组(arrays)可以根据需要折叠和展开。缓冲区(buffer)对象可以作为原始数据显示,也可以作为字符串显示。
除了每条消息之外,调试侧栏还包含关于接收消息的时间、发送信息的节点和消息类型的信息。点击源节点id将会在工作区中显示该节点。
节点上的按钮可以用来启用或禁用它的输出。建议禁用或删除未使用的调试节点。
节点还可以配置为将所有消息发送到运行时日志,或者将短(32个字符)发送到调试节点下的status(状态)文本。

  前边已经使用过了debug控件的以下功能,如果忘记了就自己往前翻一翻书本。
1 点击歇息切换显示,可显示ASCII码、十进制、十六进制。
2 展开buffer或数组。
3 选择输出的内容为payload还是完整信息。
4 观察到数据包的时间。

3.2.2 向系统控制台发送消息

  配置节点属性如下。使用一个inject节点发送消息。
node-red教程3.2 debug控件介绍_第1张图片
  可以在系统的控制台,比如powershell,也就是输入“node-red”打开node-red服务器的地方,可以看到以下内容:
这里写图片描述

3.2.3 debug控件在调试中的应用

  Debug节点具备快速定位的功能。新建两条流,每条流都有inject节点与debug节点,inject节点的内容分别为flow 1与flow 2,其它都默认,然后部署。
node-red教程3.2 debug控件介绍_第2张图片
  随意点击两个Inject节点的按钮,观察调试窗口。点击node,可以发现系统自动帮我们定位到了接收这个消息的debug节点。
node-red教程3.2 debug控件介绍_第3张图片
node-red教程3.2 debug控件介绍_第4张图片
  然后修改debug节点的名称,分别改为d1和d2。部署,并随意点击两个inject节点的按钮。

node-red教程3.2 debug控件介绍_第5张图片
node-red教程3.2 debug控件介绍_第6张图片
  此时可以发现,消息的来源已经被注明为d1或是d2。
node-red教程3.2 debug控件介绍_第7张图片
  放置debug节点并修改它的name,这是一个好习惯。它可以帮助你在一堆数据包中,快速找到你需要的数据。
如果信息实在多的话,调试窗口自带有过滤功能,可以过滤掉不需要的消息。操作如下。
node-red教程3.2 debug控件介绍_第8张图片
  完成以后,则调试窗口只剩下刚刚被勾选的d1。D2的消息就不见了。
node-red教程3.2 debug控件介绍_第9张图片
  也可以点击debug节点右侧的小按钮,按钮就自动缩回去了,表示这个节点不再输出消息。
node-red教程3.2 debug控件介绍_第10张图片
  灵活地掌握debug节点的定位与数据的筛选,可以极大提升调试的效率。比如某个节点应当输出某个消息,但是不知道输出的消息到底对不对,放置一个debug节点就可以观察到这个消息了。

你可能感兴趣的:(node-red)