我正在尝试在azure webapp上部署一个非常简单的express.js应用程序。部署日志显示部署已正确通过,但应用程序未启动。检查kudu process explorer会发现node.js进程确实没有运行另一方面,我没有看到任何应用程序日志,也没有任何迹象表明该应用程序已经启动。有没有办法看看节点试图启动应用程序时发生了什么?
qnakjoqk1#
您需要先启用日志记录,然后才能获得(希望)能够提供有关错误的更多详细信息的日志。你可以在这里了解更多。
gywdnpxw2#
你不必从kudu浏览器检查/管理你的webapp。你可以参考这篇文章https://azure.microsoft.com/en-us/documentation/articles/app-service-web-nodejs-get-started/ 通过git将本地node.js放到azure。你也可以通过ftp将你的代码移动到azure,ftp显示在webapp Jmeter 板页面中。之后,在azure上启动node.js web应用程序,然后就可以访问它了。如果您想查看代码的运行时日志,可以转到azure portal webapp中的“yourwebapp==>configure==>application diagnostics”来配置日志。
woobm2wo3#
要使azure framework运行节点,根文件夹中必须有一个web.config文件,用于配置iis以运行节点进程。如果通过git部署,就不必担心创建web.config文件。azure框架将执行部署后生成操作,该操作将将代码识别为节点应用程序,并为您创建一个web.config文件。跑 npm install 以确保提供所需的包。默认情况下,部署后生成操作不会对.zip部署运行。您可以通过以下两个选项之一解决此问题:重写默认设置,以便生成操作运行或包括 web.config file 以及 node_modules zip文件中的文件夹。要覆盖默认行为并启用zip部署的生成操作,只需将应用程序设置scm\u do\u build\u during\u deployment设置为 true 如果要使用自己的节点启用节点 web.config 文件,请参阅此答案以获取示例web.config文件。另外,请参见以下博客:https://blogs.msdn.microsoft.com/silverlining/2012/06/14/windows-azure-websites-node-js/ 更多细节。
npm install
web.config file
node_modules
true
web.config
ibps3vxo4#
把我的调查步骤公布在这里。1编辑d:\home\site\wwwroot\iisnode.yml,来自https://.scm.azurewebsites.net/debugconsole 在行下方添加
devErrorsEnabled: true
从azure门户重新启动应用程序服务访问您的服务,您将看到如下内容:hresult:0x2http状态:500http子状态:1002http原因:内部服务器错误去https://docs.microsoft.com/en-us/azure/app-service/app-service-web-nodejs-best-practices-and-troubleshoot-guide#iisnode-http status和substatus来查找substatus的含义。有关更多调试技巧,请参见:https://prmadi.com/debug-nodejs-app-in-azure-app-services-windows-2/
p4rjhz4m5#
azure webapp for node.js作为本机iis模块通过iisnode运行,该模块允许在windows上的iis中托管。请看文件https://blogs.msdn.microsoft.com/silverlining/2012/06/14/windows-azure-websites-node-js/ 了解它的特点。为了调试node.js的webapp,我建议您可以参考文档了解如何进行调试。如果您使用visualstudio作为node.js的ide,我建议在vs中安装ntvs以调试和部署node.js。请参阅下面的文档以了解如何开始。NTV安装安装node.js并开始使用NTV还有一个叫做 node-inspector 用于检查azure上的node.js应用程序。作为参考,您可以参考文档http://www.ranjithr.com/?p=98.同时,请检查 web.config 通过kudo控制台,您可以将您的代码与azure门户上gallery的express模板生成的示例进行比较。希望对你有帮助。如有任何问题,请随时告诉我。process explorer显示node.js的webapp进程。
node-inspector
5条答案
按热度按时间qnakjoqk1#
您需要先启用日志记录,然后才能获得(希望)能够提供有关错误的更多详细信息的日志。你可以在这里了解更多。
gywdnpxw2#
你不必从kudu浏览器检查/管理你的webapp。
你可以参考这篇文章https://azure.microsoft.com/en-us/documentation/articles/app-service-web-nodejs-get-started/ 通过git将本地node.js放到azure。
你也可以通过ftp将你的代码移动到azure,ftp显示在webapp Jmeter 板页面中。
之后,在azure上启动node.js web应用程序,然后就可以访问它了。
如果您想查看代码的运行时日志,可以转到azure portal webapp中的“yourwebapp==>configure==>application diagnostics”来配置日志。
woobm2wo3#
要使azure framework运行节点,根文件夹中必须有一个web.config文件,用于配置iis以运行节点进程。
如果通过git部署,就不必担心创建web.config文件。azure框架将执行部署后生成操作,该操作将
将代码识别为节点应用程序,并为您创建一个web.config文件。
跑
npm install
以确保提供所需的包。默认情况下,部署后生成操作不会对.zip部署运行。您可以通过以下两个选项之一解决此问题:
重写默认设置,以便生成操作运行或
包括
web.config file
以及node_modules
zip文件中的文件夹。要覆盖默认行为并启用zip部署的生成操作,只需将应用程序设置scm\u do\u build\u during\u deployment设置为
true
如果要使用自己的节点启用节点web.config
文件,请参阅此答案以获取示例web.config文件。另外,请参见以下博客:https://blogs.msdn.microsoft.com/silverlining/2012/06/14/windows-azure-websites-node-js/ 更多细节。ibps3vxo4#
把我的调查步骤公布在这里。
1编辑d:\home\site\wwwroot\iisnode.yml,来自https://.scm.azurewebsites.net/debugconsole 在行下方添加
从azure门户重新启动应用程序服务
访问您的服务,您将看到如下内容:
hresult:0x2
http状态:500
http子状态:1002
http原因:内部服务器错误
去https://docs.microsoft.com/en-us/azure/app-service/app-service-web-nodejs-best-practices-and-troubleshoot-guide#iisnode-http status和substatus来查找substatus的含义。
有关更多调试技巧,请参见:https://prmadi.com/debug-nodejs-app-in-azure-app-services-windows-2/
p4rjhz4m5#
azure webapp for node.js作为本机iis模块通过iisnode运行,该模块允许在windows上的iis中托管。请看文件https://blogs.msdn.microsoft.com/silverlining/2012/06/14/windows-azure-websites-node-js/ 了解它的特点。
为了调试node.js的webapp,我建议您可以参考文档了解如何进行调试。
如果您使用visualstudio作为node.js的ide,我建议在vs中安装ntvs以调试和部署node.js。请参阅下面的文档以了解如何开始。
NTV安装
安装node.js并开始使用NTV
还有一个叫做
node-inspector
用于检查azure上的node.js应用程序。作为参考,您可以参考文档http://www.ranjithr.com/?p=98.同时,请检查
web.config
通过kudo控制台,您可以将您的代码与azure门户上gallery的express模板生成的示例进行比较。希望对你有帮助。如有任何问题,请随时告诉我。
process explorer显示node.js的webapp进程。