问题描述 Web App 发布后, Application Insights 收集不到数据了 问题分析 在应用服务(App Service)中收集应用的监控数据(如Request,Exception,Trace等)时通过Agent(Application Insight Site Extension)来实现的.因更新迭代的关系,有些版本不再,或还没有被支持.如Agent(Application Insight Site Extension 2.8.38)支持.NET Core 2.1 and 3…
问题情形 当应用在Azure 应用服务App Service中运行时,有时候出现CPU,Memory很高,但是没有明显的5XX错误和异常日志,有时就是有异常但是也不能明确的指出具体的代码错误.当面临这样的情形是,有效的排查办法就是在问题重现的时候抓取DUMP文件,可以通过DUMP文件分析出是否有线程死锁,或查看时那些请求导致的死锁问题.也可以定位到相关的自定义代码类文件.非常助于下一步的查找问题. 抓取DUMP文件 1) 利用App Service自带Kudu的工具获取DUMP文件 登录进当前应…
问题情形 本地NodeJS应用使用Egg脚手架构建,本地运行测试完全没有问题,发布后App Service后不能运行.通过登录到kudu后(https://<your web site>.scm.chinacloudsites.cn)后,在日志中发现找不到一个文件或路径的错误.通过在kudu的CMD窗口执行npm start命令,发现错误是一致,怀疑是对Egg中某个框架的不支持. 详细日志 Application has thrown an uncaught exception and is…
        从5月份開始[从0開始Tornado建站]这个专栏,開始一点一点把这个分类兴趣站点弄起来,从无到有的过程也是令人兴奋的:-) 国庆的时候等待备案然后上线,如今站点域名为ustchacker.com, 欢迎增加,一起分享代码和点子,能够提问题共同进步- 如今的代码版本号是0.9(我自己定的.. .由于还在完好中),希望能依靠开源的力量打造出一个分类兴趣站点的模板式框架! 托管在GitHub上: https://github.com/littlethunder/ustchacker.…
问题描述 在成功的部署Python flask应用到App Service (Windows)后,如果需要把当前项目(如:hiflask)作为一个子项目(子站点),把web.config文件从wwwroot中移动到项目文件夹中.访问时,确遇见了404 Not Found的错误. 查看flask项目的启动日志,可以看见项目启动已经成功.但是为什么请求一直都是404的问题呢? 2021-09-10 05:29:58.224796: wfastcgi.py will restart when file…
问题描述 在上篇博文"[Azure 应用服务]App Service for Linux 中实现 WebSocket 功能 (Python SocketIO)"中,实现了通过 HTTP 方式访问部署在Azure App Service For Linux上的Python Flask Web Socket项目, 但是当使用HTTPS访问时候,socket.io所发送的GET请求都能正常. HTTP 成功 HTTPS 失败 但是POST请求全部返回400 Bad Request 那么,如何…
问题描述 如何在一个AppService下同时部署运行多个Java 应用程序呢? 问题解答 因为App Service的默认根目录为 wwwroot.如果需要运行多个Java 应用程序,需要在 wwwroot目录中创建独立文件夹,用于部署 Jar包 和 web.config 文件,特别注意的时:需要在web.config中指定jar包的启动指令. 如正常部署一个jar包,App Service 根目录下的文件结构如下: web.config内容为: <?xml version="1.0&q…
问题描述 实现部署NodeJS Express应用在App Service Linux环境中,并且使用Microsoft Authentication  Library(MSAL)来实现登录Azure AD用户,获取Token及用户信息的实现. 终极实现效果展示: 本实现中,最重要的两个步骤为: 1)根据文档" Tutorial: Sign in users and acquire a token for Microsoft Graph in a Node.js & Express we…
问题描述 在PHP项目部署在App Service后,上传文件如果大于1MB就会遇见 413 Request Entity Too Large 的问题. 问题解决 目前这个问题,首先需要分析应用所在的环境. 在App Service for Linux环境中,为PHP提供的运行时当前只有PHP 8.0, 并且 PHP 8.0 中使用的Nginx作为代理服务器.然后请求才会传递到PHP应用中. 基于以上分析,在PHP应用中,会收到Nginx 和PHP双重限制.所以传递文件的限制问题设计到两个方面:…
问题描述 参考官方文档部署 PHP Laravel 项目到App Service for Linux环境中,但是访问应用时候遇见了500 Server Error 错误. 从部署的日志中,可以明确看出部署是成功的,那么为什么启动页面不成功呢? 问题分析 Laravel 应用程序生命周期在 public 目录中开始,而不是在应用程序的根目录(wwwroot)中开始.在Azure App Service中,所有项目的默认根目录都是wwwroot. 但是可以使用 .htaccess 来重写所有请求,使…