Отладка/печать в Hubot script
Я пытаюсь отлаживать существующий Hubot script и в будущем писать свой собственный, и мне нужен простой способ его отладки или, по крайней мере, печатать значения где-нибудь (но не с каналом). Как я могу это сделать?
Бонусные баллы, если это можно сделать, просто используя Node в некотором интерактивном локальном режиме. Я действительно не знаю, с чего начать.
Все сценарии использования Hubot написаны в Coffeescript.
P.S. Я использую Hubot с Hipchat.
Ответы
Ответ 1
Я не знаю, помогает ли это, но я нашел способ проверить объекты.
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)}"
Это позволило увидеть все элементы объекта, чтобы я мог понять, что я делаю неправильно...
Ответ 2
Я сам сам нашел ответ: console.log MSG
в источнике. coffee Coffeescript делает именно то, что мне нужно.
Ответ 3
Вы можете использовать
robot.logger.info "your log message here"
Это будет записывать его так же, как и другие сообщения hubot.
Ответ 4
Обнаружен фрагмент (coffeescript) где-то, где записываются все ошибки, весьма полезно добавить к ботам в разработке.
robot.error (err, res) ->
robot.logger.error "#{err}\n#{err.stack}"
if res?
res.reply "#{err}\n#{err.stack}"