无法弄清楚如何生成和查看Bot服务上的nodeJs bot的日志

我最近将自己的nodeJs bot部署到了Bot Service,似乎无法弄清楚如何生成和查看日志。

  • 当我尝试启用日志logging,我不断得到一个未知的错误
  • 查看服务器上的日志文件,没有文件logging节点应用程序
  • 试图login到应用程序的见解,没有成功。

帮帮我?

假设您的bot是通过Azure通过App Service托pipe的,那么您应该能够通过执行以下步骤来查看您的NodeJS应用程序的日志logging:

启用logging

  1. 单击Azure仪表板上的“应用程序服务”框,或通过顶部search栏导航到资源。
  2. 在侧面菜单的监控导航到诊断日志。
  3. 确保应用程序日志logging(文件系统)已打开。
  4. 现在,在NodeJS应用程序\ site \ wwwroot的根目录中,您要创build一个名为IISNode.yml的文件,并在其中写入行loggingEnabled: true 。 这将使您的应用程序能够将stderrstdout写入日志stream。
  5. 从这里开始,你只需要访问你的应用程序的日志stream,并且有三种方法。

访问日志stream

就个人而言,我更喜欢使用Azure命令行界面 ,您可以使用节点包pipe理器或npm轻松进行安装

要安装Azure CLI,请在terminal上发出以下命令:

npm install -g azure-cli

sudo npm install -g azure-cli如果您需要root权限。

如果您需要更多关于如何安装Azure CLI的信息, 请点击这里。

现在,您必须通过Azure CLIlogin到您的Azure帐户,以便它可以访问您的订阅。 这是通过azure login完成的。

通过命令行完成login后,需要使用命令azure config mode asm切换到服务pipe理模式。

然后,您可以使用azure site list获取当前Azure站点的列表。

在列表中find您想要日志的站点,并在“ 名称”列中find它的名称 。 然后使用命令azure site log tail <sitename>和terminal将开始直接从您的应用程序输出生活日志!

其他选项

以上方法只能用于访问这些日志的三种方法之一。 如果您想了解其他两种方法的更多信息,请点击此链接。

上面的链接还包含了我在文章中列出的大量信息。

我希望这有助于!