Отладка / печать в скрипте Hubot

Я пытаюсь отладить существующий скрипт Hubot и в будущем напишу свой собственный, и мне нужен простой способ его отладки или, по крайней мере, где-нибудь напечатать значения (но не для канала). Как я могу это сделать?

Бонусные баллы, если это можно сделать, просто используя Node в каком-либо интерактивном локальном режиме. Я действительно не уверен, с чего начать.

Все сценарии, которые использует Hubot, написаны на Coffeescript.

PS Я использую Hubot с Hipchat.

4 ответа

Я не знаю, помогает ли это, но я нашел способ осмотреть объекты.

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)}"

Это позволило увидеть все элементы объекта, чтобы я мог понять, что я делаю неправильно...

Я нашел ответ сам: console.log MSG в.coffee Coffeescript делает именно то, что мне нужно.

Ты можешь использовать

robot.logger.info "your log message here"

Это будет регистрировать это так же, как и другие сообщения hubot.

Нашел где-то этот фрагмент (coffeescript), в котором записываются все ошибки, что весьма полезно для добавления к ботам в разработке.

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

Другие вопросы по тегам