如何在Azure上调试node.js app,slack bot?

时间:2016-04-15 04:43:03

标签: node.js azure slack

我有一个用botkit模块编写的slack bot。它在Azure上运行。在当地一切都很好,但在生产过程中出现了一个我无法捕捉到的错误。

尝试了以下和其他类似的方法来调试Azure上的node.js,但没有任何作用。 https://tomasz.janczuk.org/2013/07/debug-nodejs-applications-in-windows.html

我得到的只是: 不能GET /app/server.js/debug

有什么想法吗?

更新 - 添加我的代码

controller = Botkit.slackbot({
    json_file_store: '../db/',
}).configureSlackApp({
    clientId: process.env.clientId,
    clientSecret: process.env.clientSecret,
    scopes: ['bot']
});

controller.setupWebserver(process.env.PORT, function(err, webserver) {
    webserver.get('/', function(req, res) {
        res.sendFile('index.html', { root: __dirname });
    });

    controller.createWebhookEndpoints(controller.webserver);

    controller.createOauthEndpoints(controller.webserver, function(err, req, res) {
        if (err) {
            res.status(500).send('ERROR: ' + err);
        } else {
            res.sendFile('install.html', { root: __dirname });
        }
    });
});

正如Peter所说,我可以使用VSOnline - 非常酷!但是,我猜是因为

  webserver.get('/',

所有像/app/server.js/debug这样的查询都无效。

Cannot GET /app/server.js/debug

任何想法如何进行?

1 个答案:

答案 0 :(得分:0)

根据我的经验,我建议您可以尝试通过以下两种方式远程调试Azure上托管的NodeJs应用程序。

  1. 使用Visual Studio的Node.js工具(NTVS),请参阅GitHub上项目nodejstools的wiki文章Advanced Debugging以了解如何通过VS进行调试。< / p>

  2. 使用Visual Studio Online服务,请参阅第9频道上的视频Debugging node.js

  3. 希望它有所帮助。

    如有任何疑虑,请随时告诉我。