13

我正在尝试调试现有的 Hubot 脚本并在将来编写自己的脚本,我需要一种简单的方法来调试它或至少在某处打印值(但不是到通道)。我该怎么做?

如果这可以通过在某些交互式本地模式下使用 Node 来完成,则可以加分。我真的不知道从哪里开始。

Hubot 使用的所有脚本都是用 Coffeescript 编写的。

PS 我正在将 Hubot 与 Hipchat 一起使用。

4

4 回答 4

11

我不知道这是否有帮助,但我找到了一种检查对象的方法。

Util = require "util"

module.exports = (robot) ->
  robot.hear /hi robot/i, (msg) ->
    user = robot.brain.usersForFuzzyName(msg.message.user.name)
    msg.send "#{Util.inspect(user)}"

这允许查看对象的所有元素,这样我就可以弄清楚我做错了什么......

于 2013-06-21T23:04:40.110 回答
8

我自己发现了答案:console.log MSG在 .coffee Coffeescript 源代码中完全符合我的需要。

于 2012-06-12T17:41:57.947 回答
3

您可以使用

robot.logger.info "your log message here"

这将像记录其他hubot消息一样记录它。

于 2015-12-16T06:49:33.753 回答
0

在某处发现了这个(咖啡脚本)片段,它记录了所有错误,这对于添加到开发中的机器人非常有帮助。

robot.error (err, res) -> robot.logger.error "#{err}\n#{err.stack}" if res? res.reply "#{err}\n#{err.stack}"

于 2016-05-25T00:21:40.170 回答